【问题标题】:Exception in thread "main" org.openqa.selenium.remote.UnreachableBrowserException: Error communicating with the remote browser. It may have died线程“主”org.openqa.selenium.remote.UnreachableBrowserException 中的异常:与远程浏览器通信时出错。它可能已经死了
【发布时间】:2015-10-09 00:41:38
【问题描述】:

我试图执行这个 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:'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] 失败:连接被拒绝:连接

我该如何解决这个问题?

【问题讨论】:

  • 你的火狐浏览器版本是多少?
  • 似乎存在兼容性问题。尝试使用 selenium 2.47.1 和 ff 39.x 版本

标签: selenium-webdriver


【解决方案1】:

尝试添加以下代码并将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");
}
}

希望对你有帮助:)

【讨论】:

    【解决方案2】:

    这让我发疯了好一阵子。

    对我来说,有时只需重新实例化它就可以解决问题。 (如下所示)。但是,95% 的时间是因为我的 selenium 版本与 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);
        }
    }
    

    【讨论】:

      【解决方案3】:

      可能的原因可能是浏览器和chromedriver不兼容,所以安装更新的chromedriver或者更新chrome可能会有帮助

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-12-15
        • 1970-01-01
        • 1970-01-01
        • 2019-01-24
        • 2013-09-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多