1.使用scrapy发送post请求,参数为payload类型
一般使用:
return scrapy.FormRequest(url=url,formdata=data,headers=headers) 到这步思路没有问题,问题就处在scrapy暂时不支持post发送payload类型。源码貌似formdata一般用于表单发送数据,为dict类型,而非str,所以获取会报错
解决方法:
使用如下方法:
return scrapy.Request(url=url, method='POST', body=json.dumps(data_info), headers=headers, callback=self.parse, dont_filter=True, cb_kwargs=kwargs )
Request(),请求对象添加method参数为POST,body参数为payload参数。到这里问题解决!