Scrapy 我可以从响应中提取请求表单数据吗?

Scrapy 我可以从响应中提取请求表单数据吗?,scrapy,scrapy-spider,Scrapy,Scrapy Spider,我正在使用scrapy刮取一些数据,我想知道请求-响应存储了多少数据 我的具体问题如下代码所示: def parse(self,response): r = FormRequest(url=url1, formdata={somedata}, callback=parse2) #is this line necessary if I want the formdata being attached? r.meta['formdata'] = formdata

我正在使用scrapy刮取一些数据,我想知道请求-响应存储了多少数据

我的具体问题如下代码所示:

def parse(self,response):
    r = FormRequest(url=url1, formdata={somedata}, callback=parse2)

    #is this line necessary if I want the formdata being attached?
    r.meta['formdata'] = formdata

    yield r

def parse2(self,response):
    #can I access to the formdata here without that line of code?

如果您有任何建议,我们将不胜感激。

是的,但是
formdata
已经被转换成
body
,据我所知,它不是字典,而是字符串

因此,请尝试
r.body
快速提醒您可以通过以下方式检查对象的属性:
dir(r)

非常感谢!!没错,我可以在response.request.body中找到类似“key1=v1&key2=v2”的字符串形式的formdata。但是,我需要这两个特性作为后面请求的formdata,您知道我如何使用它而不提取字符串(拆分并放入新的dict)或使用request.meta吗?您可以在创建
FormRequest
对象时,将
formdata
放入
request.meta
,即
FormRequest(url,formdata=fd,callback=parse2,meta={'formdata':fd}
然后您可以通过
response.meta['formdata']
parse2
中访问它