Request对象在爬虫程序中生成并传递到系统,直到它们到达下载程序,后者执行请求并返回一个Response对象,该对象返回到发出请求的爬虫程序。
二、Request对象
一个Request对象表示一个HTTP请求,它通常是在爬虫生成,并由下载执行,从而生成Response
-
参数
-
url(string) - 此请求的网址
-
callback(callable) - 将使用此请求的响应(一旦下载)作为其第一个参数调用的函数。有关更多信息,请参阅下面的将附加数据传递给回调函数。如果请求没有指定回调,parse()将使用spider的 方法。请注意,如果在处理期间引发异常,则会调用errback。
-
method(string) - 此请求的HTTP方法。默认为'GET'。可设置为"GET", "POST", "PUT"等,且保证字符串大写
-
meta(dict) - 属性的初始值Request.meta,在不同的请求之间传递数据使用
-
body(str或unicode) - 请求体。如果unicode传递了a,那么它被编码为 str使用传递的编码(默认为utf-8)。如果 body没有给出,则存储一个空字符串。不管这个参数的类型,存储的最终值将是一个str(不会是unicode或None)。
-
headers(dict) - 这个请求的头。dict值可以是字符串(对于单值标头)或列表(对于多值标头)。如果 None作为值传递,则不会发送HTTP头.一般不需要
-
encoding: 使用默认的 'utf-8' 就行。
-
cookie(dict或list) - 请求cookie。这些可以以两种形式发送。
-
FormRequest类扩展了Request具有处理HTML表单的功能的基础。它使用lxml.html表单 从Response对象的表单数据预填充表单字段
class scrapy.http.FormRequest(url[, formdata, ...])
本FormRequest类增加了新的构造函数的参数。其余的参数与Request类相同
-
参数:formdata(元组的dict或iterable) - 是一个包含HTML Form数据的字典(或(key,value)元组的迭代),它将被url编码并分配给请求的主体。
返回一个新FormRequest对象,其中的表单字段值已预先



