【问题标题】:org.openqa.selenium.TimeoutException: connection refused error while running headless firefox browser in Ubuntu using AutoCloseableorg.openqa.selenium.TimeoutException:使用 AutoCloseable 在 Ubuntu 中运行无头 Firefox 浏览器时连接被拒绝错误
【发布时间】:2023-06-22 18:54:01
【问题描述】:

错误:

org.openqa.selenium.TimeoutException: 连接被拒绝 构建信息:版本:'3.141.59',修订:'e82be7d358',时间:'2018-11-14T08:25:48' 系统信息:主机:'ubuntu',ip:'127.0.0.1',os.name:'Linux',os.arch:'amd64',os.version:'4.15.0-112-generic',java.version :'1.8.0_252' 驱动信息:driver.version:FirefoxDriver

代码:

System.setProperty("webdriver.gecko.driver", "/usr/bin/geckodriver");
FirefoxOptions firefoxOptions = new FirefoxOptions();
firefoxOptions.setHeadless(true);

java.util.logging.Logger.getLogger("org.openqa.selenium").setLevel(Level.OFF);
System.out.println(1);

WebDriver driver = new FirefoxDriver(firefoxOptions);
// code does not reach this point. Look like its freezing at the initialisation of 'driver'.
try (AutoCloseable autoCloseable = () -> driver.close()) {
         ...

我已将 Java 版本更改为另一个建议的问题(从 11 到 8)。

编辑:该帖子 (Java Selenium Webdriver Connection Refused) 无效。

编辑 #2:我通过 Tomcat 9 运行它。

【问题讨论】:

    标签: java selenium selenium-webdriver selenium-firefoxdriver tomcat9


    【解决方案1】:

    我没有看到您的代码块有任何此类问题。我采用了您的代码并使用以下配置执行:


    执行细节

    这里是使用的执行细节:

    • 代码块:

      import java.util.logging.Level;
      
      import org.openqa.selenium.firefox.FirefoxDriver;
      //import org.openqa.selenium.firefox.FirefoxDriverLogLevel;
      import org.openqa.selenium.firefox.FirefoxOptions;
      
      public class AutoCloseableSelenium {
      
          public static void main(String[] args) throws Exception {
      
              System.setProperty("webdriver.gecko.driver","C:\\WebDrivers\\geckodriver.exe");
              FirefoxOptions options = new FirefoxOptions();
              options.setHeadless(true);
              //options.setLogLevel(FirefoxDriverLogLevel.TRACE);
              java.util.logging.Logger.getLogger("org.openqa.selenium").setLevel(Level.OFF);
              System.out.println(1);
              FirefoxDriver driver = new FirefoxDriver(options);
              try (AutoCloseable autoCloseable = () -> driver.quit()) { }
              System.out.println("Exiting program");
        }
      

      }

    • 控制台输出:

      1
      1595977246813 mozrunner::runner   INFO    Running command: "C:\\Program Files\\Mozilla Firefox\\firefox.exe" "-marionette" "-headless" "-foreground" "-no-remote" "-profile" "C:\\Users\\SOMABH~1\\AppData\\Local\\Temp\\rust_mozprofile345iC4"
      *** You are running in headless mode.
      JavaScript error: resource://gre/modules/XULStore.jsm, line 66: Error: Can't find profile directory.
      console.error: SearchCache: "_readCacheFile: Error reading cache file:" (new Error("", "(unknown module)"))
      1595977254325 Marionette  INFO    Listening on port 53331
      1595977254676 Marionette  WARN    TLS certificate errors will be ignored for this session
      1595977254896 Marionette  INFO    Stopped listening on port 53331
      JavaScript error: resource://activity-stream/lib/ActivityStreamPrefs.jsm, line 27: NS_ERROR_ILLEGAL_VALUE: Component returned failure code: 0x80070057 (NS_ERROR_ILLEGAL_VALUE) [nsIPrefBranch.removeObserver]
      console.warn: services.settings: main/messaging-experiments sync interrupted by shutdown
      JavaScript error: resource://services-settings/IDBHelpers.jsm, line 24: Error: IndexedDB: main/fxmonitor-breaches list() IndexedDB:  execute() The application is shutting down
      JavaScript error: resource://gre/modules/Sqlite.jsm, line 928: Error: Connection is not open.
      Exiting program
      

    【讨论】:

    • 如果它意味着什么,我正在通过一个 tomcat 网络应用程序运行它。
    • @user12346306 你没有告诉我们你的二进制配置。
    • 我不明白什么是“二进制配置”,您能详细说明一下吗?
    最近更新 更多