首页 > 解决方案 > 硒暂停代码在控制台中给出错误

问题描述

使用火狐浏览器(最新)。

此代码有效,但最后当我使用 try 使用 2 秒线程暂停浏览器时出错 - 请参阅 try catch 部分:

 

    import org.openqa.selenium.By;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.firefox.FirefoxDriver;
    import org.openqa.selenium.firefox.FirefoxOptions;
    import org.openqa.selenium.remote.service.DriverService;
    
    public class TestSection6_36_rediff {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
    
    
            System.setProperty("webdriver.gecko.driver", "C:\\work\\BROWSER DRIVERS\\geckodriver-v0.29.1-browserV88-32bit.exe");
            FirefoxOptions opt = new FirefoxOptions();
            opt.setBinary("C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe");
            WebDriver driver = new FirefoxDriver(opt);
            
            driver.get("https://rediff.com");
    
            driver.findElement(By.cssSelector("a[title*='Sign in']")).click();
            
            driver.findElement(By.cssSelector("input#login1")).sendKeys("my test input");
    
            
    // this unchecks "Keep me signed in"
            driver.findElement(By.cssSelector("label.lblkeepme")).click();
            
            driver.findElement(By.cssSelector("input[id*='password']")).sendKeys("my password");
            
            driver.findElement(By.xpath("//input[contains(@value,'Sign')]")).click();
    
    //print out error for incorrect password:
    
            System.out.println("output:" + driver.findElement(By.cssSelector("div[class*='div_login']")).getText());
            
    **// Sleeps 2 seconds so we can see browser interaction.    
            try {
                Thread.sleep(2000);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }**
            driver.close();
            driver.quit();
        }
    }

- - - - - - - - - - - - - - - - 错误信息:

1621066424739 geckodriver INFO 监听 127.0.0.1:33971 1621066425574 mozrunner::runner INFO 运行命令:“C:/Program Files (x86)/Mozilla Firefox/firefox.exe” “--marionette” “-foreground” “-no-remote " "-profile" "C:\Users\artist\AppData\Local\Temp\rust_mozprofileSilGYE" 1621066426280 Marionette INFO Marionette 已启用 console.warn: SearchSettings: "get: 不存在设置文件,新配置文件?" (新错误(“”,“(未知模块)”)) 1621066428870 Marionette INFO 在端口 56130 上侦听 1621066428962 Marionette WARN TLS 证书错误将被忽略此会话 2021 年 5 月 15 日上午 1:13:49 org.openqa.selenium。 remote.ProtocolHandshake createSession INFO:检测到的方言:W3C 输出:错误的用户名和密码组合。

###!!![Child][RunMessage] 错误:通道关闭:发送/接收来不及,消息将丢失

线程“主”org.openqa.selenium.NoSuchSessionException 中的异常:尝试在未建立连接的情况下运行命令构建信息:版本:'3.141.59',修订:'e82be7d358',时间:'2018-11-14T08:25: 48'系统信息:主机:'HLAP',ip:'172.16.0.127',os.name:'Windows 7',os.arch:'amd64',os.version:'6.1',java.version:'15.0 .2' 驱动程序信息:org.openqa.selenium.firefox.FirefoxDriver Capabilities {acceptInsecureCerts: true, browserName: firefox, browserVersion: 88.0.1, javascriptEnabled: true, moz:accessibilityChecks: false, moz:buildID: 20210504152106, moz:geckodriverVersion : 0.29.1, moz:headless: false, moz:processID: 5672, moz:profile: C:\Users\artist\AppData\Loc..., moz:shutdownTimeout: 60000, moz:useNonSpecCompliantPointerOrigin: false, moz:webdriverClick: true, pageLoadStrategy: normal, platform: WINDOWS, platformName: WINDOWS, platformVersion: 6.1, rotatable: false, setWindowRect: true, strictFileInteractability: false, 超时: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior:解雇并通知} 会话 ID:f0430570-72cc-434d-a62d-b5dfb624b0fc at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl .java:64) 在 java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 在 java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500) 在 java. base/java.lang.reflect.Constructor.newInstance(Constructor.java:481) 在 org.openqa.selenium。remote.http.W3CHttpResponseCodec.createException(W3CHttpResponseCodec.java:187) 在 org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:122) 在 org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode( W3CHttpResponseCodec.java:49) 在 org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158) 在 org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83) 在 org.openqa .selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:609) at org.openqa.selenium.remote.RemoteWebDriver.quit(RemoteWebDriver.java :452) 在 Testing123.main(Testing123.java:44)在 org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158) 在 org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:49) 在 org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158) 解码(W3CHttpResponseCodec.java:122) .openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552) at org.openqa.selenium.remote.RemoteWebDriver.execute (RemoteWebDriver.java:609) 在 org.openqa.selenium.remote.RemoteWebDriver.quit(RemoteWebDriver.java:452) 在 Testing123.main(Testing123.java:44)在 org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158) 在 org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:49) 在 org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158) 解码(W3CHttpResponseCodec.java:122) .openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552) at org.openqa.selenium.remote.RemoteWebDriver.execute (RemoteWebDriver.java:609) 在 org.openqa.selenium.remote.RemoteWebDriver.quit(RemoteWebDriver.java:452) 在 Testing123.main(Testing123.java:44)DriverCommandExecutor.execute(DriverCommandExecutor.java:83) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:609) at org .openqa.selenium.remote.RemoteWebDriver.quit(RemoteWebDriver.java:452) 在 Testing123.main(Testing123.java:44)DriverCommandExecutor.execute(DriverCommandExecutor.java:83) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:609) at org .openqa.selenium.remote.RemoteWebDriver.quit(RemoteWebDriver.java:452) 在 Testing123.main(Testing123.java:44)

标签: selenium-webdriver

解决方案


推荐阅读