gpt4 book ai didi

selenium-webdriver - Selenium : Fingerprints, 可识别性和可追溯性的浏览器自动化?

转载 作者:行者123 更新时间:2023-12-04 07:51:07 27 4
gpt4 key购买 nike

我想使用 selenium/webdriver 来模拟浏览器并用它抓取一些网站内容。即使它不是最快的方法,对我来说它也有很多优点,例如执行脚本等。

对于许多网站,禁止通过自动方法访问它们,例如 google 或 bing 等搜索引擎。

对于一种工具,我需要从 google 抓取几个关键字的估计结果统计数据。这将如下所示:模拟浏览器访问 google.com 并输入关键字并抓取结果,然后稍作停顿后输入下一个关键字,抓取结果等等......

我的问题是:网站是否有可能识别出我正在使用 selenium 来模拟浏览器而不是手动使用浏览器?尤其是google案例,让我有些疑惑。我知道 selenium 部分是由谷歌开发的,或者至少是由一些为谷歌工作的人开发的。那么是否会为 selenium 留下一些指纹,或者是否无法决定我是自己使用浏览器还是 selenium 模拟的浏览器,即使对于谷歌也是如此?

最佳答案

不,实际上没有人可以看到您正在使用 Selenium 而不是自己使用 WebDriver 手动操作浏览器。我不确定旧的 Selenium RC,但它应该是相同的方式。这是它的工作原理:

  • Selenium 使用干净的配置文件(或您选择的配置文件)打开浏览器
  • Selenium 连接到浏览器,因此它可以引导它,控制它。但是浏览器仍然会完成大部分工作。基本上,Selenium 取代了用户对浏览器的输入,但仅此而已。

  • 您可以通过阅读浏览器发送的 HTTP header 的内容轻松验证这一点。

    如果你真的需要 Selenium 被你的服务器识别,你可以 use Browsermob-proxyadd a custom header to your requests .

    综上所述,您必须注意一件事。虽然无法直接检测 Selenium,但您正在访问的网站可以获取一些间接线索。这些通常包括扫描几乎立即发出的太多请求 - 这对您来说可能是一个问题。确保您的 Selenium 表现得像一个用户。

    编辑 2016/04:

    显然它是可能的 https://stackoverflow.com/a/33403473/2930045表示公司可以做到。我的猜测 - 这只是一个猜测 - 他们可以运行 Selenium 安装到浏览器中的一些 JS 来运行。

    关于selenium-webdriver - Selenium : Fingerprints, 可识别性和可追溯性的浏览器自动化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17653653/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com