1

我正在使用 Scrapy 抓取一个网站,但其中一些 API 没有返回没有“if-none-match”标头的 JSON 数据。

我有超过 100 个 API 列表,因此我想生成自动标头以获取有效的 JSON 文件。任何人都知道如何处理这个问题,或者有任何其他方法可以摆脱它。

提前致谢。

4

1 回答 1

1

如果要为所有请求定义标头,可以使用DEFAULT_REQUEST_HEADERS设置:

# settings.py
DEFAULT_REQUEST_HEADERS={
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
    'Accept-Language': 'en',
    'If-None-Match': '*',
}

或个人请求headers参数:

req = scrapy.Request(url, callback=self.parse, headers={'If-None-Match': '*'})
于 2020-10-22T18:44:50.583 回答