Google chrome 当使用Chrome浏览器运行WebDriver时,会收到一条消息“0”;仅允许本地连接”;即使浏览器正常启动

Google chrome 当使用Chrome浏览器运行WebDriver时,会收到一条消息“0”;仅允许本地连接”;即使浏览器正常启动,google-chrome,webdriver,selenium-chromedriver,Google Chrome,Webdriver,Selenium Chromedriver,当我使用WebDriver运行Chrome浏览器时,我在控制台上收到以下消息。请让我知道如何解决它 “仅在本地端口22582上启动ChromeDriver(v2.10.267521)” 允许连接。” 以下是我的示例代码: 公共类浏览器启动{ 公共静态void main(字符串[]args){ System.setProperty(“webdriver.chrome.driver”,“C:\\chromedriver\U win32\\chromedriver.exe”); WebDriver驱动

当我使用WebDriver运行Chrome浏览器时,我在控制台上收到以下消息。请让我知道如何解决它

“仅在本地端口22582上启动ChromeDriver(v2.10.267521)” 允许连接。”

以下是我的示例代码:

公共类浏览器启动{
公共静态void main(字符串[]args){
System.setProperty(“webdriver.chrome.driver”,“C:\\chromedriver\U win32\\chromedriver.exe”);
WebDriver驱动程序=新的ChromeDriver();
驱动程序。获取(“http://webdunia.com");
driver.close();
driver.quit();
}
}

这只是一条信息性消息。消息告诉您的是chromedriver可执行文件将只接受来自本地计算机的连接


大多数驱动程序实现(Chrome驱动程序和IE驱动程序)都会创建HTTP服务器。语言绑定(Java、Python、Ruby、.NET等)都使用JSON over HTTP协议与驱动程序通信,并使浏览器自动化。由于HTTP服务器只是在一个开放端口上侦听由语言绑定生成的HTTP请求,因此只允许从同一主机上的其他进程连接到由语言绑定启动的HTTP服务器。请注意,此限制不适用于浏览器与外部网站的连接;相反,它只是阻止来自其他网站的传入连接。

这只是一条信息性消息。如果您的测试脚本和chromedriver在同一台机器上,则没有任何意义,可以添加“白名单ips”选项。您的测试将正常运行。但是,如果您在网格设置中使用chromedriver,则不会显示此消息。

我收到了完全相同的错误。今天我就这个问题争论了几个小时。这似乎是由于chromedriver和selenium server standalone的版本不匹配造成的。config.js文件引用的目录包含chromedriver 2.9和selenium server standalone 2.35.0。一旦我确定我们参考的是2.10和2.42.2,它就起作用了。

当我不得不修复一个很久没有看过的旧项目时,这种情况发生在我身上。与项目相关的chromedriver与我的chrome版本不兼容,因此当我更新chromedriver时,它运行良好。

不一定是最佳实践,但我的环境是一个本地网络,有多台机器需要访问selenium

运行chromedriver时,可以通过如下参数:

chromedriver——白名单ips=“”

这将基本上将所有IP列为白名单,当然并不总是理想的解决方案,并在生产环境中小心使用,但您应该得到详细的警告:

启动ChromeDriver 2.16.333244 (端口9515上的15fb740a49ab3660b8f8d496cfab2e4d37c7e6ca)所有远程 允许连接。改用白名单

这是一个最好的解决办法,但它是有效的


我必须在同一个终端上运行命令,而不是单独运行

nohup sudo Xvfb :10 -ac
export DISPLAY=:10
java -jar vendor/se/selenium-server-standalone/bin/selenium-server-standalone.jar -Dwebdriver.chrome.bin="/usr/bin/google-chrome" -Dwebdriver.chrome.driver="vendor/bin/chromedriver"

如果您使用不兼容版本的Selenium和ChromeDriver,通常会出现此错误

针对Maven项目的Selenium 3.0.1:

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.0.1</version>
    </dependency>

org.seleniumhq.selenium

我通过安装浏览器驱动程序解决了此错误:

  • 将浏览器导航到seleniumhq.org网站
  • 选择下载选项卡
  • 向下滚动页面至浏览器部分,单击链接下载所需的驱动程序,例如Google Chrome驱动程序
  • 双击下载的文件,例如chromedriver_mac64(1).zip
  • 双击提取的文件,例如chromedriver
  • 参考:搜索YouTube.com以查找错误


    平台:macOS High Sierra 10.13.3

    Chromedriver是一款网络驱动程序。WebDriver是一个开源工具,用于跨多种浏览器自动测试web应用程序。它提供了浏览网页、用户输入、JavaScript执行等功能。当您运行此驱动程序时,它将允许您的脚本访问此驱动程序并在Google Chrome上运行命令

    这可以通过在本地网络上运行的脚本(
    只允许本地连接。
    )或通过在外部网络上运行的脚本(
    允许所有远程连接。
    )完成。使用本地连接选项总是比较安全的。默认情况下,可以通过端口
    9515
    访问Chromedriver

    要回答这个问题,这只是一条信息。你不必担心

    下面给出了两个选项

    $ chromedriver
    
    Starting ChromeDriver 83.0.4103.39 (ccbf011cb2d2b19b506d844400483861342c20cd-refs/branch-heads/4103@{#416}) on port 9515
    Only local connections are allowed.
    Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
    ChromeDriver was started successfully.
    
    这是通过白名单所有IP实现的

    $ chromedriver --whitelisted-ips=""
    
    Starting ChromeDriver 83.0.4103.39 (ccbf011cb2d2b19b506d844400483861342c20cd-refs/branch-heads/4103@{#416}) on port 9515
    All remote connections are allowed. Use a whitelist instead!
    Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
    ChromeDriver was started successfully.
    

    经过数小时的分析,阅读了大量日志和源代码,最终发现了问题。解决这个问题很容易

    在单行中:您需要将--whitelisted ips=传递到chrome驱动程序中(而不是chrome!)可执行文件中

    您可以通过以下几种方式实现:

    如果您在本地/直接从代码中使用ChromeDriver,只需在ChromeDriver init之前插入下面的行

    System.setProperty(“webdriver.chrome.whitelistedIps”,”);
    
    如果远程使用它(如selenium hub/grid),则需要在节点启动时设置系统属性,如命令:

    java -Dwebdriver.chrome.whitelistedIps= testClass etc...
    
    或通过传递
    JAVA\u选项
    env

    chrome:
    图片:selenium/node chrome:3.141.59
    容器名称:chrome
    取决于:
    -硒轮毂
    环境:
    -集线器\主机=selenium集线器
    -集线器端口=4444
    -JAVA_OPTS=-Dwebdriver.chrome.whitelistedIps=
    
    也有同样的问题,通过从以下位置获取适当的webdriver解决了该问题:

    通过输入以下链接,您可以知道chrome浏览器的确切版本:

    chrome://settings/help
    

    你应该解释他如何解决他的问题。你只是发现了问题,但如何解决呢?哪个版本