Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 网站能否检测到Firefox正在木偶上运行?_Javascript_Selenium_Firefox_Geckodriver_Firefox Marionette - Fatal编程技术网

Javascript 网站能否检测到Firefox正在木偶上运行?

Javascript 网站能否检测到Firefox正在木偶上运行?,javascript,selenium,firefox,geckodriver,firefox-marionette,Javascript,Selenium,Firefox,Geckodriver,Firefox Marionette,在Selenium上运行Firefox需要Geckodriver,因为Gecko引擎实际上与JSON Wire协议不兼容。因此Geckodriver正在运行一个HTTP服务器,它通过木偶翻译来提供Selenium和浏览器之间的所有命令。 一个网站真的能告诉我们,当前的浏览器是由木偶控制的吗?我已经看到,当Firefox自动运行时,您可以通过使用localhost和config中的木偶端口访问“木偶页面”。Firefox还显示了robot,它告诉用户当前的浏览器是自动的。所以某种类型的自动化检测是

在Selenium上运行Firefox需要Geckodriver,因为Gecko引擎实际上与JSON Wire协议不兼容。因此Geckodriver正在运行一个HTTP服务器,它通过木偶翻译来提供Selenium和浏览器之间的所有命令。 一个网站真的能告诉我们,当前的浏览器是由木偶控制的吗?我已经看到,当Firefox自动运行时,您可以通过使用localhost和config中的木偶端口访问“木偶页面”。Firefox还显示了robot,它告诉用户当前的浏览器是自动的。所以某种类型的自动化检测是内置的,但是它可以被访问吗


编辑:是的,不同的浏览器会暴露不同的东西,但是javascript检测不再起作用了。它能够检测Selenium RC,因为要工作它必须向浏览器中注入一些Javascript代码。由于Selenium 2.0,Webdriver直接与浏览器通信,因此简单的Javascript变量检测无法工作。我还发现并解释了其中的一些公开信息,但一个网站真的能以某种方式访问它们吗?公开的另一个区别是:Chrome将navigator.webdriver属性设置为true,但firefox没有设置。

是的,链接是关于Chromedriver的,这个问题是关于firefox的,但如果你看到公认的答案,答案是肯定的。请参阅以下引用:
…当然,所有这些都取决于您所使用的浏览器。所有不同的浏览器都暴露了不同的东西。
@JeffC我想你误解了这个问题。OP是问一个网站是否真的能告诉我们,当前的浏览器是由木偶控制的?它是基于W3C的。你提到的dup是关于ChromeDriver和基于OSS的Chrome的。当然规格不同。不是重复的。@DebanjanB我没有误解,我特别在上面添加了我的评论,以阻止人们说你做了什么。请阅读我上面的评论。我直接引用了答案,它指的是一般的浏览器,而不仅仅是Chrome。@JeffC您忽略了一个简单的事实W3C规范和OSS规范是不同的。这个问题是关于木偶/W3C的,它与Chrome/OSS没有任何关系。“怎么可能是dup?”DebanjanB这个问题的答案是肯定的。规范是什么并不重要,浏览器是什么也不重要。阅读我链接的答案,它详细解释了每个浏览器都会暴露网站可以检测到的不同内容。您将python问题复制到Java答案,但不知何故无法理解这是一个dup?!?