一个奇怪的问题Only local connections are allowed.

这篇博客讨论了如何解决使用Selenium server 3.141.59和Java 1.8.321时遇到的'只允许本地连接'问题。为使ChromeDriver接受远程连接,需要在命令行中设置'whitelisted-ips'为空,并在代码中通过System.setProperty()添加相应属性。对于远程使用,如在Selenium Grid中,可以在启动节点时设置JAVA_OPTS环境变量。示例代码和Docker配置也已给出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我想要能够通过远程打开 chrome 浏览器进入 url 的解决方案。

我决定使用以下内容:

  • Selenium server3.141.59 与 Java 1.8.321

  • chromedriver.exe 107

一个奇怪的问题:

“只允许本地连接。”

在cmd中运行“chromedriver.exe --verbose --whitelisted-ips=''”

“白名单允许远程连接<''>”这似乎有效,但我无法弄清楚我在代码中怎么使用

直接加参数addArguments("--whitelisted-ips=''");都是错误的。这个参数需要注入 chromedriver exe,而不是 chrome。

如果直接从代码本地使用 ChromeDriver,只需在 ChromeDriver init 之前插入以下行

    System.setProperty("webdriver.chrome.whitelistedIps", "");

如果远程使用它(例如 Selenium 集线器/网格),您需要在节点运行时像在命令中一样设置系统属性:

java -Dwebdriver.chrome.whitelistedIps"" -Dwebdriver.chrome.driver=chromedriver.exe -jar selenium-server-standalone-3.141.59.jar -port 4446 -role node -hub http://192.168.0.76:4444/grid/register -maxSession 5 -browser "browserName=chrome, version=89.0.4389.90, maxInstances=5, platform=WINDOWS"

或 docker 通过传递 JAVA_OPTS env

  chrome:
    image: selenium/node-chrome:3.141.59
    container_name: chrome
    depends_on:
      - selenium-hub
    environment:
      - HUB_HOST=selenium-hub
      - HUB_PORT=4444
      - JAVA_OPTS=-Dwebdriver.chrome.whitelistedIps=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值