use*_*403 76 google-chrome webdriver selenium-chromedriver
当我使用WebDriver运行Chrome浏览器时,我在控制台上收到以下消息.请让我知道如何解决它.
"在端口22582上启动ChromeDriver(v2.10.267521)""仅允许本地连接."
这是我的示例代码:
public class Browserlaunch {
    public static void main(String[] args) {
        System.setProperty("webdriver.chrome.driver", "C:\\chromedriver_win32   \\chromedriver.exe");
        WebDriver driver = new ChromeDriver() ;
        driver.get("http://webdunia.com");
        driver.close();
        driver.quit();
    }
}
Jim*_*ans 88
这仅是一条信息性消息.消息告诉您的是,chromedriver可执行文件只接受来自本地计算机的连接.
大多数驱动程序实现(确定Chrome驱动程序和IE驱动程序)创建HTTP服务器.语言绑定(Java,Python,Ruby,.NET等)都使用JSON-over-HTTP协议与驱动程序通信并自动化浏览器.由于HTTP服务器只是在开放端口上侦听由语言绑定生成的HTTP请求,因此只允许来自语言绑定的HTTP服务器连接来自同一主机上的其他进程.请注意,此限制不适用于浏览器可以与外部网站建立的连接 ; 相反,它只是阻止来自其他网站的传入连接.
小智 12
我得到了完全相同的错误.我今天和这个问题争了几个小时.它似乎是由chromedriver和selenium-server-standalone版本之间的不匹配引起的.config.js文件引用了一个具有chromedriver 2.9和selenium-server-standalone 2.35.0的目录.一旦我确定我们引用了2.10和2.42.2,就可以了.
经过几个小时的分析,阅读了大量的日志和源代码,终于发现了问题。而且解决起来也很容易。
单行:您需要将 --whitelisted-ips= 传递到chrome 驱动程序(不是 chrome!)可执行文件中
您可以通过以下几种方式来做到这一点:
如果您在本地/直接从代码使用 ChromeDriver,只需在 ChromeDriver init 之前插入以下行
    System.setProperty("webdriver.chrome.whitelistedIps", "");
如果您远程使用它(例如 selenium hub/grid),您需要在节点启动时设置系统属性,如命令所示:
java -Dwebdriver.chrome.whitelistedIps= testClass etc...
或通过传递JAVA_OPTSenv进行 docker
java -Dwebdriver.chrome.whitelistedIps= testClass etc...
Chromedriver 是一个 WebDriver。WebDriver 是一种开源工具,用于跨多种浏览器自动测试 Web 应用程序。它提供了导航网页、用户输入、JavaScript 执行等功能。当您运行此驱动程序时,它将使您的脚本能够访问此驱动程序并在 Google Chrome 上运行命令。
这可以通过在本地网络 ( Only local connections are allowed.) 中运行的脚本或通过在外部网络 ( All remote connections are allowed.) 上运行的脚本来完成。使用本地连接选项总是更安全。默认情况下,您的 Chromedriver 可通过 port 访问9515。
要回答这个问题,这只是一条信息性消息。你不必担心它。
下面给出了这两个选项。
$ 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.
小智 5
当我不得不修复一个有一段时间没有被查看的旧项目时,这发生在我身上。与项目关联的 chromedriver 与我的 chrome 版本不兼容,所以当我更新 chromedriver 时它工作正常。
| 归档时间: | 
 | 
| 查看次数: | 145720 次 | 
| 最近记录: |