网页请求禁止重定向

网页请求禁止重定向,第1张

禁止重定向 一.requests

在requests.get 中添加属性 allow_redirects=False,如下:

html = requests.get(url=url,headers=headers,allow_redirects=False)
二.scrapy 1.针对全局修改:

在 settings.py 文件中配置 HTTPERROR_ALLOWED_CODES ,具体重定向状态码可根据网页具体分析

HTTPERROR_ALLOWED_CODES = [301302]
2.针对单一请求修改:

在指定网页 yield 时,添加参数 meta={‘dont_redirect’: True, ‘handle_httpstatus_list’: [301]}
dont_redirect: True 表示禁止网页重定向;(scrapy默认可以重定向)
handle_httpstatus_list 存放可处理的网页状态码列表;(也可在settings.py中HTTPERROR_ALLOWED_CODES 里添加状态码)

yield scrapy.Request(headers=self.headers(), url=url, callback=self.parse, meta={'dont_redirect': True, 'handle_httpstatus_list': [301]})
三.“取之有道”!!!

有时候不对请求做重定向也可获取重定向后的内容,但“取之有道”!!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/922878.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-16
下一篇2022-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存