在Scrapy中,您可以通过在请求中设置headers
属性来添加自定义请求头。以下是一个简单的示例:
首先,确保您已经安装了Scrapy并创建了一个新的Scrapy项目。然后,在您想要发送带有自定义请求头的请求的Spider文件中,找到或创建一个方法(例如start_requests
),并在该方法中设置请求头。
以下是一个示例Spider,它在发送请求时添加了自定义的User-Agent
和Authorization
请求头:
import scrapy class MySpider(scrapy.Spider): name = 'myspider' start_urls = ['https://example.com'] def start_requests(self): for url in self.start_urls: yield scrapy.Request(url, headers={ 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3', 'Authorization': 'Bearer your_api_token_here', }) def parse(self, response): # 在这里处理响应 pass
在这个示例中,我们首先导入了scrapy
模块,然后创建了一个名为MySpider
的Spider类。我们设置了start_urls
属性,以便从给定的URL开始抓取。
在start_requests
方法中,我们遍历start_urls
列表,并为每个URL创建一个scrapy.Request
对象。我们通过设置headers
参数来添加自定义请求头。在这个例子中,我们添加了User-Agent
和Authorization
请求头。
最后,我们定义了一个名为parse
的方法来处理响应。在这个方法中,您可以编写处理网页内容的代码。