我正在使用使用硒协议的phantomjs webdriver渲染网页.当我尝试渲染网页时,出现以下错误
@H_301_6@RemoteWebDriver.get(url)
尽管我的webdriver正在运行.
我也尝试过重新启动phantomjs webdriver.
@H_301_6@org.openqa.selenium.UnsupportedCommandException: Variable Resource Not Found - {"headers":{"Accept-Encoding":"gzip,deflate","Connection":"Keep-Alive","Content-Length":"39","Content-Type":"application/json; charset=utf-8","Host":"10.20.1.239:9517","User-Agent":"Apache-HttpClient/4.5.5 (Java/1.8.0_171)"},"httpVersion":"1.1","method":"POST","post":"{\"url\":\"http://example.com/\"}","url":"/session/07e53c90-6b45-11e9-892c-4faf7180871b/url","urlParsed":{"anchor":"","query":"","file":"url","directory":"/session/07e53c90-6b45-11e9-892c-4faf7180871b/","path":"/session/07e53c90-6b45-11e9-892c-4faf7180871b/url","relative":"/session/07e53c90-6b45-11e9-892c-4faf7180871b/url","port":"","host":"","password":"","user":"","userInfo":"","authority":"","protocol":"","source":"/session/07e53c90-6b45-11e9-892c-4faf7180871b/url","queryKey":{},"chunks":["session","07e53c90-6b45-11e9-892c-4faf7180871b","url"]}} Command duration or timeout: 10.20 seconds Build info: version: 'unknown',revision: 'unknown',time: 'unknown' System info: host: 'ip-10-20-1-73.ec2.internal',ip: '10.20.1.73',os.name: 'Linux',os.arch: 'amd64',os.version: '3.10.0-862.2.3.el7.x86_64',java.version: '1.8.0_171' Driver info: org.openqa.selenium.remote.RemoteWebDriver Capabilities [{applicationCacheEnabled=false,rotatable=false,handlesAlerts=false,databaseEnabled=false,version=2.1.1,platform=LINUX,browserConnectionEnabled=false,proxy=Proxy(direct),nativeEvents=true,acceptSslCerts=false,driverVersion=1.2.0,locationContextEnabled=false,webStorageEnabled=false,browserName=phantomjs,takesScreenshot=true,driverName=ghostdriver,javascriptEnabled=true,cssSelectorsEnabled=true}] Session ID: 07e53c90-6b45-11e9-892c-4faf7180871b at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_171] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_171] at
最佳答案
RemoteWebDriver是关键字/保留的单词.因此,RemoteWebDriver实例的名称应不同.此外,在调用RemoteWebDriver时,您需要传递Selenium Grid Hub的URL和DesiredCapabilities实例作为强制参数,并且可以使用以下(基于Windows)解决方案:
@H_301_6@File path=new File("C:\\Utility\\phantomjs-2.1.1-windows\\bin\\phantomjs.exe"); System.setProperty("phantomjs.binary.path",path.getAbsolutePath()); DesiredCapabilities capabilities = DesiredCapabilities.phantomjs(); capabilities.setPlatform(Platform.XXX); driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),capabilities); driver.get("https://www.google.co.in"); System.out.println(driver.getTitle()); driver.quit();