当前位置: 首页 > 面试题库 >

如何在没有ChromeDriver.exe的Maven中使用Selenium-chrome-driver

羊舌成周
2023-03-14
问题内容

我为打开Chrome浏览器添加了以下依赖项和代码,但浏览器无法打开。

<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-chrome-driver</artifactId>
<version>2.50.0</version>
</dependency>

我的代码:-

package example;
import org.openqa.selenium.WebDriver;`
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.Test;
public class DepChrome {

    @Test
    public void testBrowser() {
    WebDriver driver = new ChromeDriver();
    driver.manage().window().maximize();
    }
}

问题答案:

添加以下依赖项,如下所示:

        <dependency>
            <groupId>io.github.bonigarcia</groupId>
            <artifactId>webdrivermanager</artifactId>
            <version>3.0.0</version>
<!--            <scope>test</scope> -->
        </dependency>

来源:从以下网址复制新的依赖项版本:

https://mvnrepository.com/artifact/io.github.bonigarcia/webdrivermanager

使用以下代码:

WebDriver driver = null;
WebDriverManager.chromedriver().version("77.0.3865.40").setup();
ChromeOptions options = new ChromeOptions();
options.addArguments("start-maximized"); 
options.addArguments("enable-automation"); 
options.addArguments("--no-sandbox"); 
options.addArguments("--disable-infobars");
options.addArguments("--disable-dev-shm-usage");
options.addArguments("--disable-browser-side-navigation"); 
options.addArguments("--disable-gpu"); 
driver = new ChromeDriver(options); 
driver.get("https://www.google.com/");

基本上,下面的代码行起到了作用,下面的代码下载了特定版本

WebDriverManager.chromedriver().version("77.0.3865.40").setup();

您可以从以下URL获取所需的版本:

https://chromedriver.storage.googleapis.com/index.html

如果您要查找上面chromedriver URL上存在的最新依赖项,也可以使用下面的代码代替上面的代码

WebDriverManager.chromedriver().setup();

或(旧方法)

您需要给出chrome二进制文件的路径,如下所示:

System.setProperty("webdriver.chrome.driver", "C:\\pathto\\my\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://www.google.com");

从硒站点下载chrome二进制文件,如下所示:-http
:
//chromedriver.storage.googleapis.com/index.html?path=2.21/

现在提供从二进制到硒的路径:

System.setProperty("webdriver.chrome.driver", "C:\\pathto\\my\\chromedriver.exe");

还有一件事情要注意。如果使用的是Windows,则使用反斜线\\;如果使用的是Mac或linux,则使用正斜线//来设置路径。

希望它能对您有所帮助:)



 类似资料:
  • 问题内容: 我正在学习使用Selenium(v2.20)来领先一些 即将使用它创建浏览器测试的程序员。我想在 陷阱到达之前发现它们,而我却跌入了一个陷阱。 当我创建ChromeDriver时,它始终会弹出“ Google Chrome EULA”并 显示两个按钮:“接受并运行”和“取消”。因为我希望这是一个 自动化测试,所以让用户单击按钮是不可能的。 我查看了Chromium CommandSwi

  • 问题内容: 我想编写一个脚本,在其中使用如下的selenium包: 现在,在获得所需的URL之后,我想使镶边声音静音。我该怎么办?像这样的东西: 其他任何Webdriver都有可能吗?像Firefox或…? 问题答案: 不确定是否可以在打开页面后(通常在任何页面上都可以这样做),但是可以通过设置切换器来在浏览器会话的整个过程中将所有声音静音: 或者,您可以直接将HTML5视频播放器静音: 您可能需

  • 因此,基本上我正在尝试使用scrapinghub的Crawlera代理,并在windows上使用python的selenium chrome。 我检查了留档,他们建议这样使用Polipo: 1)在 /etc/polipo/config中添加以下行 2) 将此添加到selenium驱动程序 现在我想不使用脊髓灰质炎,直接使用代理。 有没有办法替换polipo_proxy变量并将其更改为crawler

  • 首先,对于selenium,我不想使用chromium(Linux中默认使用chromium),我想使用google chrome。其次,当我用selenium下载一个文件时,我想用一个特定的路径下载该文件,例如:src/resources/downloadFiles/它不工作,默认情况下需要/home/myuser/Downloads 这是我的代码: 受保护的final static路径下载路径

  • 问题内容: 这是我收到的错误消息: 这是我正在使用的代码: 我已经检查了寻找chromedriver的目录,并且目录在那里。我不确定这是什么问题。任何帮助将是巨大的! 编辑:这只是文件夹名称中的空格问题,但是现在我还有另一个问题。当我尝试启动chrome时,提示“管理员已在这台计算机上安装了chrome…。”我该怎么办? 问题答案: 您必须提供chromeDriver.exe文件路径,而不是从UR