如何修复以下Chrome驱动程序和Chrome浏览器问题



我正在尝试在Selenium Web驱动程序中执行基本脚本。Chrome驱动程序版本为80.0,Chrome浏览器版本为80.0。

运行程序后,我可以看到空白窗口,而且我读到了这样的东西:

启用保护模式请保护chrome驱动程序和相关测试框架使用的端口,以防止恶意代码访问

但是我无法捕获此消息,因为它会快速显示下面粘贴的错误消息。如何解决此问题?

我的代码:

package sanitytest;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class chrometest {
public static void main(String[]args) {
WebDriver driver = new ChromeDriver();
System.setProperty("WebDriver.chrome.driver","C:\Users\rashm\Downloads\chromedriver_win32)\chromedriver.exe");
driver.get("http://www.gmail.com");
driver.manage().window().maximize();
}
}

问题:

Starting ChromeDriver 81.0.4044.69 (6813546031a4bc83f717a2ef7cd4ac6ec1199132-refs/branch-heads/4044@{#776}) on port 41468
Only local connections are allowed.
Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: session not created: This version of ChromeDriver only supports Chrome version 81
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:48'
System info: host: 'LAPTOP-41SP0FVR', ip: '192.168.0.9', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_111'
Driver info: driver.version: ChromeDriver

您似乎使用了错误版本的chromedriver。

你的浏览器版本可能是80+,但你的chromedriver是81+。这就是你遇到这个问题的原因。请下载chromedriver 80.0.3987.106。

这是我能建议的最好的方法。使用WebDriverManager,它将在浏览器版本的基础上下载chromedriver的稳定版本。

JAVA:如果您使用maven,请将以下内容添加到pom.xml中以加载依赖项。

<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>3.4.0</version>
</dependency>

然后您的代码应该如下所示。

WebDriverManager.getInstance(CHROME).setup();
WebDriver driver = new ChromeDriver();

巨蟒:

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install()

仅此而已,无需下载任何驱动程序并设置路径。网络驱动程序会照顾他们。

最新更新