与远程浏览器通信时出错它可能已经死了Selenium Web驱动程序

如何解决与远程浏览器通信时出错它可能已经死了Selenium Web驱动程序

我在Windows 7中本地运行InternetExplorerDriver时遇到了相同的问题-(IEDriverServer_Win32_2.42.0.zip)

org.openqa.selenium.remote.UnreachablebrowserException: Error communicating with the remote browser. It may have died.

当我在TaskManager下检查正在运行的进程时,有多个IEDriverServer.exe正在运行的进程没有被正确清理。

运行以下命令,杀死所有正在运行的IEDriverServer.exe进程,并已解决此问题(对我而言)。

taskkill /F /IM IEDriverServer.exe

解决方法

这是我的错误日志:

Apr 12,2014 3:27:46 AM org.apache.http.impl.client.DefaultRequestDirector tryConnect
INFO: I/O exception (java.net.SocketException) caught when connecting to the target host: Permission denied: connect
Apr 12,2014 3:27:46 AM org.apache.http.impl.client.DefaultRequestDirector tryConnect
INFO: Retrying connect
Apr 12,2014 3:27:46 AM org.apache.http.impl.client.DefaultRequestDirector tryConnect
INFO: Retrying connect
org.openqa.selenium.remote.UnreachableBrowserException: Error communicating with the remote browser. It may have died.
Build info: version: '2.41.0',revision: '3192d8a',time: '2014-03-27 17:18:15'
System info: host: 'prgi-PC',ip: '192.168.1.9',os.name: 'Windows 7',os.arch: 'amd64',os.version: '6.1',java.version: '1.7.0_51'
Driver info: driver.version: RemoteWebDriver
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:589)
    at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:268)
    at org.openqa.selenium.remote.RemoteWebElement.findElements(RemoteWebElement.java:187)
    at org.openqa.selenium.remote.RemoteWebElement.findElementsByTagName(RemoteWebElement.java:264)
    at org.openqa.selenium.By$ByTagName.findElements(By.java:323)
    at org.openqa.selenium.remote.RemoteWebElement.findElements(RemoteWebElement.java:163)
    at com.sai.kiran.Test.main(Test.java:155)
Caused by: java.net.SocketException: Permission denied: connect
    at java.net.DualStackPlainSocketImpl.connect0(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:83)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:117)
    at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:178)
    at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:144)
    at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:131)
    at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:610)
    at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:445)
    at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:72)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:57)
    at org.openqa.selenium.remote.HttpCommandExecutor.fallBackExecute(HttpCommandExecutor.java:322)
    at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:301)
    at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.execute(NewProfileExtensionConnection.java:165)
    at org.openqa.selenium.firefox.FirefoxDriver$LazyCommandExecutor.execute(FirefoxDriver.java:362)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:568)
    ... 6 more

码:

FirefoxProfile profile = new FirefoxProfile();

String path="C:\\Users\\prgi\\Downloads\\listShack";
profile.setPreference("browser.download.folderList",2);
profile.setPreference("browser.download.dir",path);

profile.setPreference("browser.download.manager.alertOnEXEOpen",false);

profile.setPreference("browser.helperApps.neverAsk.saveToDisk","application/msword,application/csv,text/csv,image/png,image/jpeg");

profile.setPreference("browser.download.manager.showWhenStarting",false);

profile.setPreference("browser.download.manager.focusWhenStarting",false);
//profile.setPreference("browser.download.useDownloadDir",true);
profile.setPreference("browser.helperApps.alwaysAsk.force",false);

profile.setPreference("browser.download.manager.alertOnEXEOpen",false);

profile.setPreference("browser.download.manager.closeWhenDone",false);

profile.setPreference("browser.download.manager.showAlertOnComplete",false);
profile.setPreference("browser.download.manager.useWindow",false);

profile.setPreference("browser.download.manager.showWhenStarting",false);

profile.setPreference("services.sync.prefs.sync.browser.download.manager.showWhenStarting",false);

profile.setPreference("pdfjs.disabled",true);

WebDriver driver = new FirefoxDriver(profile);

从这里我正在管理我的元素。

注意:它连续24/7天工作了两天,今天我经常收到此错误。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?