微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 Python 在网页抓取时绕过 cookie 协议页面

如何解决使用 Python 在网页抓取时绕过 cookie 协议页面

在抓取重定向 google url 后,我遇到了 google 协议页面 cookie 的问题。

我试图从 Google 新闻 uri 上的不同页面中抓取,但是当我运行此代码时:

req = requests.get(url,headers=headers)

with "headers" = {'User-Agent': 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_8; en-US) AppleWebKit/534.1 (KHTML,like Gecko) Chrome/6.0.422.0 Safari/534.1','Upgrade-Insecure-Requests': '1','Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8','DNT': '1','Accept-Encoding': 'gzip,deflate','Accept-Language': 'it-IT'}
and for example URL = https://news.google.com/./articles/CAIiEMb3PYSjFFVbudiidQPL79QqGQgEKhAIACoHCAow-ImTCzDRqagDMKiIvgY?hl=it&gl=IT&ceid=IT%3Ait 

the "request.content" is the HTMLs code of agreement cookies page by Google.

我也尝试将重定向链接转换为普通链接,但响应为我提供了指向 this

重定向链接

我有与此问题 (How can I bypass a cookie agreement page while web scraping using Python?) 相关的相同问题。

无论如何,其中提出的解决方案仅适用于特定站点

注意:直到几周前,整个代码才有效。

解决方法

我通过添加行解决了问题

'Cookie':'CONSENT=YES+cb.20210418-17-p0.it+FX+917; '

到请求头。

虽然请求返回的页面仍然是 Google 页面,但该页面包含指向发起请求的站点的链接。

所以,一旦我获得了页面,我就进行了更多的抓取,以便获得链接并开始我想要的请求。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。