关于Scrapy框架post请求request payload参数报错以及解决方案

今天写一个爬虫脚本的时候遇到需要使用post这个request payload参数,但是由于之前用的requests库,轻松post便可完美爬取~改到scrapy时就不行

1.直接使用FromRequest报错:ValueError: not enough values to unpack (expected 2, got 1)

在这里插入图片描述
无论我怎么添加修改FromRequest其中的参数都不行,然后查了一下发现FromRequest并不支持传request payload,只能对付一下form data这种类型的参数~

2.查找到解决办法:直接Request中的body即可~

参数记得用json.dumps()转一下,不然类型不对~
自己写的话一般请求头记得加’Content-Type’: 'application/json’这个也是个坑,给你们标注一下~
最重要的是使用body~,具体如下

heards = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36',
            'Content-Type': 'application/json',}
        data1 = {"I_AS_ARGU1":"{}".format(hao),"I_AS_KIND":"BL","I_AS_COUNTRY_CD":""}
        url = 'http://www.pancon.co.kr/pan/selectWeb212AR.pcl'
        response = scrapy.Request(url=url,headers=heards,body=json.dumps(data1),callback=self.parse)

我需要的数据就出来了~
在这里插入图片描述有问题私信我,在线接外包,除了犯法的啥都做~
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值