为了账号安全,请及时绑定邮箱和手机立即绑定

.java 使用铬驱动程序和铬使用硒和爪哇

.java 使用铬驱动程序和铬使用硒和爪哇

宝慕林4294392 2022-09-22 10:48:34
我试图简单地启动chrome驱动程序,但得到一些超时错误。浏览器确实启动了,但在几秒钟后关闭,但有以下例外:系统信息:Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:19:58.91Z'System info: host: 'MAC-images-MacBook-Pro-1164.local', ip: '----', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.13.6', java.version: '1.8.0_172'Driver info: driver.version: ChromeDriver] with root causeat java.util.concurrent.FutureTask.get(FutureTask.java:205)~[na:1.8.0_172]     atcom.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:156)~[guava-25.0-jre.jar:na]    atorg.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:75)~[selenium-remote-driver-3.14.0.jar:na]     atorg.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:188)~[selenium-remote-driver-3.14.0.jar:na]     atorg.openqa.selenium.remote.service.DriverService.start(DriverService.java:179)~[selenium-remote-driver-3.14.0.jar:na]     atorg.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:79)~[selenium-remote-driver-3.14.0.jar:na]     atorg.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:548)~[selenium-remote-driver-3.14.0.jar:na]     at代码截图:@Componentpublic class AutomationRunner implements IAutomationRunner {    @Override    public void run() throws MalformedURLException {        System.setProperty("webdriver.chrome.driver",            "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome");        ChromeDriver driver = new ChromeDriver();        driver.get("www.google.com");        driver.close();        driver.quit();    }}已使用的软件包 : <dependency>        <groupId>org.seleniumhq.selenium</groupId>        <artifactId>selenium-java</artifactId>        <version>3.141.59</version> </dependency>关于我在这里错过了什么的任何想法?谢谢!
查看完整描述

2 回答

?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

此错误消息...


Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:19:58.91Z'

System info: host: 'MAC-images-MacBook-Pro-1164.local', ip: '----', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.13.6', java.version: '1.8.0_172'

Driver info: driver.version: ChromeDriver

.

com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:156)

~[guava-25.0-jre.jar:na]    at

org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:75)

...这意味着浏览器驱动程序无法启动/生成新的网络浏览器,即浏览器浏览器会话。


您的主要问题是在您传递了谷歌浏览器二进制文件而不是Chrome驱动程序二进制文件的绝对路径的行内。System.setProperty()


溶液

您需要下载适用于Mac OS X的相关Chrome驱动程序二进制文件,即chromedriver_mac64并将其放置在系统中的任何位置,提取Chrome驱动程序二进制文件并在以下位置传递绝对路径:System.setProperty()


System.setProperty("webdriver.chrome.driver", "/path/to/chromedriver");


查看完整回答
反对 回复 2022-09-22
?
缥缈止盈

TA贡献2041条经验 获得超4个赞

我遇到了同样的问题。还有另一种解决方案。

硒需要番石榴。将下面的依赖关系作为maven依赖关系添加到pom.xml。

<dependency>
  <groupId>com.google.guava</groupId>
  <artifactId>guava</artifactId>
  <version>25.0-jre</version>
</dependency>

https://stackoverflow.com/a/59631425/6491408


查看完整回答
反对 回复 2022-09-22
  • 2 回答
  • 0 关注
  • 141 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号