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

在 GCP VM 上使用请求 python 抓取时缺少一些标签 HTML

如何解决在 GCP VM 上使用请求 python 抓取时缺少一些标签 HTML

我正在尝试抓取网站,如果我在自己的本地服务器上运行我的代码,结果如预期,但如果我部署到 GCP 虚拟机,一些 HTML 标记会丢失。我已确保本地和 GCP 上的源代码相同。

有趣的是,如果我更改标题,则会丢失更多标签。到目前为止,我发现这些标题效果最好:

headers = {
"User-Agent": "Mozilla/5.0 (iPhone; cpu iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML,like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1 Edg/87.0.4280.141","Content-Type": "application/x-www-form-urlencoded","Connection": "keep-alive"}

标签丢失问题是由发送的标头引起的,还是由 GCP 虚拟机中发生的其他事情引起的?

解决方法

回顾在评论中完成的故障排除:

  • GCP 本身不会过滤标头。
  • 根据网站的不同,抓取结果可能会因 IP 不同而有所不同。
  • 如果您发现本地和 GCP 上的转储之间存在任何差异,请确保代码和所有依赖项都相同。

您可以找到有关从 GCP here 进行抓取的更多信息。

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