- 一些信息:发生了什么?:该网站正在使用安全服务来保护自己免受在线攻击。
浏览上下文即Chrome浏览器会话被检测为BOT,并且导航被阻止。
您可以在以下位置找到一些相关讨论:
浏览上下文即Chrome浏览器会话被检测为BOT,并且导航被阻止。
您可以在以下位置找到一些相关讨论:
保护警报呢?代码中的所有相同只有一个参数......有什么办法可以避免它吗?像平常一样使用--headless
吗?
@МаксимДихтярь 查看更新的答案并让我知道状态。
@Guy 也许您需要重新审视答案,特别是分析和结论部分。
@DebanjanB 我做到了。分析部分在问题中,只是不是html格式。结论是正确的,但没有解释为什么没有--headless
就可以工作。
Cloudflare 旨在阻止机器人。他们假设数据抓取工具使用无头浏览器,因此他们阻止了它。来自 Cloudflare
*无头浏览器是一种网络浏览器,很像 Chrome 或 Firefox,但默认情况下它没有可视化用户界面, 允许它比典型的网络浏览器移动得更快。经过 本质上在命令行级别运行,无头浏览器 能够避免渲染整个 Web 应用程序。数据刮板 编写使用无头浏览器更快地请求数据的机器人,例如 没有人查看被抓取的每个页面。
我使用这个服务器端脚本进行了测试:
注意:在您发布的 Python 脚本中,您缺少几行,以删除 window.webdriver
属性(没有这个,服务器检测到您正在使用 WebDriver 是微不足道的)[]:
在抓取受 CloudFlare 保护的网站时,您需要执行以下操作:
我在抓取一个电子商务网站(guess dot com)时遇到了同样的问题。更改标题顺序并没有为我解决。我的结论:显然,CloudFlare 分析请求的 TLS 指纹并抛出 403 (1020) 代码,以防指纹与通常用于抓取的 node.js/python/curl 匹配。解决方案是模拟一些流行浏览器的指纹——最明显的方法是使用 Puppeteer.js 和 puppeteer 额外的隐身插件。它奏效了!但是..由于 Puppeteer 对我的用例来说不够快(我说得委婉些.. Puppeteer 在资源和迟缓方面很疯狂)我不得不构建一个使用无聊SSL(Chrome 使用的 SSL 库)的实用程序 - 因为编译 C/C++ 代码并找出某些 TLS 库的隐蔽编译错误对于大多数 Web 开发人员来说并不有趣 - 我将其包装为 API 服务器,您可以在这里尝试:
切记:数据就是生命,数据就是站长的一切,务必!备份!备份!备份!重要事情说三遍!任何商家都有跑路的可能,所以一定要记住备份!本站所发布内容只起综合对比作用,非推荐引导行为
版权声明:主机参考部分内容均来自网络,若无意侵犯到您的权利,请及时联系我们,将在72小时内删除相关内容!请查阅:
提供云计算和加速服务,热网互联成立于2009年,致力于成为最受用户爱戴的云服务商
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。