首页 > 解决方案 > 使用 Scrapy Spider 发送请求标头以避免 403 响应状态

问题描述

我正在向网站发出请求,但我收到了403回复。我们如何使用 scrapy 蜘蛛发送请求标头以便我们能够得到200响应?

此外,网站会使用新请求更新 cookie。当我们发出新请求时,是否可以使用爬虫来旋转 cookie?

# -*- coding': 'utf-8 -*-
import scrapy


    class MainSpider(scrapy.Spider):
        name = 'main'
        allowed_domains = ['11880.com']
        start_urls = ['https://www.11880.com/suche/makler/deutschland']
    
        def parse(self, response):
            print(response.body)

希望得到一些答案。

问候


在此处输入图像描述

标签: pythonscrapy

解决方案


覆盖start_requests()方法并传递headers参数。

import scrapy

class MainSpider(scrapy.Spider):
    name = 'main'
    allowed_domains = ['11880.com']
    start_urls = ['https://www.11880.com/suche/makler/deutschland']
    headers = {
        'header1': 'value1',
        'header2': 'value2'
    }

    def start_requests(self):
        for url in self.start_urls:
            yield scrapy.Request(url=url, callback=self.parse, headers=self.headers)

    def parse(self, response):
        print(response.body)

推荐阅读