Redirecting (meta refresh) scarapy 重定向

在使用阿布云代理进行数据爬取时,遇到了重定向问题,表现为爬取六页后出现Redirecting(metarefresh)错误。通过调整设置如关闭重定向、更新HTTP状态码重试等未果,最终发现关闭代理直接使用本机IP解决问题。原因是网页中存在<meta>标签用于刷新页面,此行为由反爬机制触发。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

https://www.buyelec.net

写京北数据爬取的时候遇到的问题,由于反爬,使用了https://center.abuyun.com/#/cloud/http-proxy/tunnel/lists  阿布云的代理

然后爬不了6页就会出现上面的错误,而且还找不到原因,各种方法都尝试了

HTTP_RETRY_CODES = [404, 303, 304, 301,302]
RETRY_TIMES = 20
# REDIRECT_ENABLED = False                       # 关掉重定向, 不会重定向到新的地址
# HTTPERROR_ALLOWED_CODES = [301, 302]     # 返回301, 302时, 按正常返回对待, 可以正常写入cookie
custom_settings = {
    'DOWNLOAD_DELAY': 5,
    'DOWNLOAD_TIMEOUT': 360,
    'CONCURRENT_REQUESTS_PER_DOMAIN': 1,
    'CONCURRENT_ITEMS': 1,
    'REDIRECT_MAX_METAREFRESH_DELAY': 200,
    'REDIRECT_MAX_TIMES': 40,
}

都没有效果,最后把代理关掉,直接本机ip跑代码,问题解决,不在出现 Redirecting (meta refresh)

 

 

#############整了一天,发现不是代理的问题,是网页的重定向导致的 网页中出现了

<meta http-equiv="refresh" content="3;URL=javascript:history.back()" />

但是用浏览器请求网页的时候没有这一行代码,于是总结是反爬导致的

 

过几天爬虫写完了上传一版scrapy中解决这个问题的代码,原理就是只要即使跟新cookie,ip,headers 就不会出现这个问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值