当使用Python中的爬虫框架Scrapy时,我只想检查几千个域的HTML响应代码 - 没有其他任何事情来对状态代码进行快速高效的初始爬行。
如何只执行 HEAD 请求而不是默认的 GET 请求?
您可以使用
Request
中的方法选项
def start_requests(self):
yield scrapy.Request(
url,
method="HEAD"
)
基于原始代码,你可以这样做:
from typing import Iterable
from scrapy.http import Request
...
def start_requests(self) -> Iterable[Request]:
for url in self.start_urls:
yield Request(url, method="HEAD", dont_filter=True)