web-scraping - Scrapy - 即使添加标题后也无法解决 403 错误
问题描述
我正在尝试刮doordash.com
。但每次我运行请求时,它都会显示 403 和这条线INFO: Ignoring response <403 http://doordash.com/>: HTTP status code is not handled or not allowed
。
我尝试了很多事情,比如添加 User-Agent,但仍然没有用。我还添加了完整的标题,但同样的事情又发生了。这是我的代码:
class DoordashSpider(scrapy.Spider):
name = 'doordash'
allowed_domains = ['doordash.com']
start_urls = ['http://doordash.com/']
def start_requests(self):
headers= {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.101 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
'Accept-Language': 'en-US,en;q=0.9',
'Accept-Encoding': 'gzip, deflate, br'}
for url in self.start_urls:
yield scrapy.Request(url, headers=headers)
def parse(self, response):
print('Crawled Successfully')
如何获得200?
解决方案
推荐阅读
- react-native - [React-Native-Modal]:onBackButtonPress 道具不返回任何内容
- c# - 有没有办法使用参数来设置变量名?
- mysql - 未捕获的 mysqli_sql_exception:子查询返回多于 1 行
- pandas - 在 Marp 中插入表格
- .net - 使用 MassTransit 7 将两个服务连接到同一个 VHost 以处理作业 (JobSlotUnavailable)
- amazon-web-services - AWS Ubuntu 实例上的 SSL 协议错误
- java - 根据条件从 REST Json 响应中检索特定数据
- python-3.x - Python3(pip):查找哪个包提供了特定的模块
- raspberry-pi - 测试云功能 - 无法读取未定义的属性“数据”
- powershell - 如何将多个参数传递给 --detect.maven.build.command 以使用 jenkins 对 maven 项目进行 blackduck hub 扫描