Scrapy爬取谷歌专利出现Offsite Request过滤错误求助
解决Scrapy爬取谷歌专利时的Offsite过滤问题
从错误日志能明确看到,你的请求被Scrapy的Offsite中间件过滤了——谷歌根据你的IP跳转到了地区域名www.google.com.pk,但你的allowed_domains列表里没有包含这个域名。
修复步骤:
- 方案一(推荐):将
allowed_domains改为根域名google.com,Scrapy会自动允许所有属于该根域名的子域名(包括www.google.com、www.google.com.pk等地区跳转域名):
allowed_domains = ['google.com']
- 方案二:直接把地区域名添加到允许列表中,适合需要精确控制域名的场景:
allowed_domains = ['www.google.com','google.com','www.google.com.pk']
额外提示:
谷歌专利页面存在反爬机制,后续如果遇到请求被拦截的情况,可尝试:
- 在
settings.py中配置DOWNLOAD_DELAY设置合理的请求间隔 - 修改
USER_AGENT模拟真实浏览器请求 - 使用代理IP分散请求来源
内容的提问来源于stack exchange,提问作者Sarfraz
相关产品推荐
相关产品推荐

