我试图执行这个Selenium脚本,
public class FirePath_Ex {
public static void main(String[] args)
{// TODO Auto-generated method stub
WebDriver d=new FirefoxDriver();
d.get("https://facebook.com");
d.findElement(By.xpath(".//*[@id='email']")).sendKeys("dhhfdssd");
d.findElement(By.id("pass")).sendKeys("sjfsdfj");
}
}
关闭FireFox后显示以下错误,
线程中的异常" main" org.openqa.selenium.remote.UnreachableBrowserException:错误 与远程浏览器通信。它可能已经死了。 构建信息:版本:' 2.47.1',修订版:' 411b314',时间:' 2015-07-30 02:56:46' 系统信息:主机:' Admin-PC',ip:' 192.168.0.101',os.name:' Windows 7',os.arch:&# 39; x86',os.version:' 6.1',java.version: ' 1.7.0-EA' 驱动程序信息:driver.version:RemoteWebDriver 在org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:589) 在org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:348) 在org.openqa.selenium.remote.RemoteWebDriver.findElementByXPath(RemoteWebDriver.java:445) 在org.openqa.selenium.By $ ByXPath.findElement(By.java:358) 在org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:340) 在FirePath_Ex.main(FirePath_Ex.java:13) 引起:org.apache.http.conn.HttpHostConnectException:连接到127.0.0.1:7055 [/127.0.0.1]失败:连接被拒绝:连接
如何解决此问题?
答案 0 :(得分:0)
尝试添加以下代码,并用您的绝对路径替换firefox exe的路径: -
System.setProperty("webdriver.firefox.bin", "C:\\firefox.exe");
所以你的代码应该是: -
公共类FirePath_Ex {
public static void main(String[] args)
{// TODO Auto-generated method stub
System.setProperty("webdriver.firefox.bin", "C:\\firefox.exe");
WebDriver d=new FirefoxDriver();
d.get("https://facebook.com");
d.findElement(By.xpath(".//*[@id='email']")).sendKeys("dhhfdssd");
d.findElement(By.id("pass")).sendKeys("sjfsdfj");
}
}
希望它会对你有所帮助:)。
答案 1 :(得分:0)
这让我疯狂了很多。
对我而言,只需重新实例化它就可以在某些时候解决问题。 (如下)。然而,95%的时间是因为我的硒版本与firefox版本不兼容。支持版本的文档不易解析,也不包含详尽的列表。有时需要一些跟踪和错误。
public FirefoxWebPageReader firefoxWebPageReader() {
return forceInit(3);
}
private FirefoxWebPageReader forceInit(final int tries) {
if (tries == 0) {
throw new RuntimeException("Can not initialize Firefox reader");
}
try {
final String binaryPath = environment.getProperty("crawler.firefox.path");
return new FirefoxWebPageReader(binaryPath);
} catch (WebDriverException e) {
LOGGER.error("Error occurred when building FirefoxWebPageReader, tries left: " + (tries - 1), e);
return forceInit(tries - 1);
}
}
答案 2 :(得分:0)
可能的原因可能是浏览器和chromedriver之间不兼容,因此安装更新的chromedriver或更新chrome可能会有所帮助