ropensci / RSelenium

An R client for Selenium Remote WebDriver
https://docs.ropensci.org/RSelenium
341 stars 81 forks source link

Error with phantomJS #114

Closed denrou closed 7 years ago

denrou commented 7 years ago

Hi,

I tried to follow the example given in the vignette but I get an error :

library(RSelenium)
pJS <- phantom("inst/phantomjs-2.1.1-windows/bin/phantomjs.exe", port = 4445L)
remDr <- remoteDriver(browserName = "phantomJS")
remDr$open()

[1] "Connecting to remote server"

Selenium message:The best matching driver provider org.openqa.selenium.edge.EdgeDriver can't create a new driver instance for Capabilities [{nativeEvents=true, browserName=phantomJS, javascriptEnabled=true, version=, platform=ANY}]
Build info: version: '3.0.1', revision: '1969d75', time: '2016-10-18 09:48:19 -0700'
System info: host: 'DTP-FIXE-12', ip: '192.168.254.117', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_111'
Driver info: driver.version: unknown

Error:   Summary: UnknownError
     Detail: An unknown server-side error occurred while processing the command.
     class: org.openqa.selenium.WebDriverException
     Further Details: run errorDetails method

This is my sessionInfo :

sessionInfo()
R version 3.3.0 (2016-05-03)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)

locale:
[1] LC_COLLATE=French_France.1252  LC_CTYPE=French_France.1252    LC_MONETARY=French_France.1252
[4] LC_NUMERIC=C                   LC_TIME=French_France.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] RSelenium_1.6.2 devtools_1.12.0

loaded via a namespace (and not attached):
 [1] httr_1.2.1     R6_2.2.0       tools_3.3.0    withr_1.0.2    curl_2.3       memoise_1.0.0  knitr_1.14    
 [8] git2r_0.15.0   digest_0.6.10  jsonlite_1.1   caTools_1.17.1 openssl_0.9.5  bitops_1.0-6   XML_3.98-1.4  

And this is the errorDetails :

`remDr$errorDetails()
$additionalInformation
[1] "\nDriver info: driver.version: unknown"

$localizedMessage
[1] "The best matching driver provider org.openqa.selenium.edge.EdgeDriver can't create a new driver instance for Capabilities [{nativeEvents=true, browserName=phantomJS, javascriptEnabled=true, version=, platform=ANY}]\nBuild info: version: '3.0.1', revision: '1969d75', time: '2016-10-18 09:48:19 -0700'\nSystem info: host: 'DTP-FIXE-12', ip: '192.168.254.117', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_111'\nDriver info: driver.version: unknown"

$supportUrl
NULL

$systemInformation
[1] "System info: host: 'DTP-FIXE-12', ip: '192.168.254.117', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_111'"

$cause
NULL

$stackTrace
$stackTrace[[1]]
$stackTrace[[1]]$fileName
[1] "DefaultDriverFactory.java"

$stackTrace[[1]]$nativeMethod
[1] FALSE

$stackTrace[[1]]$methodName
[1] "newInstance"

$stackTrace[[1]]$className
[1] "org.openqa.selenium.remote.server.DefaultDriverFactory"

$stackTrace[[1]]$hCode
[1] -1365021414

$stackTrace[[1]]$lineNumber
[1] 62

$stackTrace[[1]]$class
[1] "java.lang.StackTraceElement"

$stackTrace[[2]]
$stackTrace[[2]]$fileName
[1] "DefaultSession.java"

$stackTrace[[2]]$nativeMethod
[1] FALSE

$stackTrace[[2]]$methodName
[1] "call"

$stackTrace[[2]]$className
[1] "org.openqa.selenium.remote.server.DefaultSession$BrowserCreator"

$stackTrace[[2]]$hCode
[1] 2056168471

$stackTrace[[2]]$lineNumber
[1] 222

$stackTrace[[2]]$class
[1] "java.lang.StackTraceElement"

$stackTrace[[3]]
$stackTrace[[3]]$fileName
[1] "DefaultSession.java"

$stackTrace[[3]]$nativeMethod
[1] FALSE

$stackTrace[[3]]$methodName
[1] "call"

$stackTrace[[3]]$className
[1] "org.openqa.selenium.remote.server.DefaultSession$BrowserCreator"

$stackTrace[[3]]$hCode
[1] 2056168458

$stackTrace[[3]]$lineNumber
[1] 209

$stackTrace[[3]]$class
[1] "java.lang.StackTraceElement"

$stackTrace[[4]]
$stackTrace[[4]]$fileName
NULL

$stackTrace[[4]]$nativeMethod
[1] FALSE

$stackTrace[[4]]$methodName
[1] "run"

$stackTrace[[4]]$className
[1] "java.util.concurrent.FutureTask"

$stackTrace[[4]]$hCode
[1] 424519275

$stackTrace[[4]]$lineNumber
[1] -1

$stackTrace[[4]]$class
[1] "java.lang.StackTraceElement"

$stackTrace[[5]]
$stackTrace[[5]]$fileName
[1] "DefaultSession.java"

$stackTrace[[5]]$nativeMethod
[1] FALSE

$stackTrace[[5]]$methodName
[1] "run"

$stackTrace[[5]]$className
[1] "org.openqa.selenium.remote.server.DefaultSession$1"

$stackTrace[[5]]$hCode
[1] -255143467

$stackTrace[[5]]$lineNumber
[1] 176

$stackTrace[[5]]$class
[1] "java.lang.StackTraceElement"

$stackTrace[[6]]
$stackTrace[[6]]$fileName
NULL

$stackTrace[[6]]$nativeMethod
[1] FALSE

$stackTrace[[6]]$methodName
[1] "runWorker"

$stackTrace[[6]]$className
[1] "java.util.concurrent.ThreadPoolExecutor"

$stackTrace[[6]]$hCode
[1] -1208971944

$stackTrace[[6]]$lineNumber
[1] -1

$stackTrace[[6]]$class
[1] "java.lang.StackTraceElement"

$stackTrace[[7]]
$stackTrace[[7]]$fileName
NULL

$stackTrace[[7]]$nativeMethod
[1] FALSE

$stackTrace[[7]]$methodName
[1] "run"

$stackTrace[[7]]$className
[1] "java.util.concurrent.ThreadPoolExecutor$Worker"

$stackTrace[[7]]$hCode
[1] -166011880

$stackTrace[[7]]$lineNumber
[1] -1

$stackTrace[[7]]$class
[1] "java.lang.StackTraceElement"

$stackTrace[[8]]
$stackTrace[[8]]$fileName
NULL

$stackTrace[[8]]$nativeMethod
[1] FALSE

$stackTrace[[8]]$methodName
[1] "run"

$stackTrace[[8]]$className
[1] "java.lang.Thread"

$stackTrace[[8]]$hCode
[1] 1432591020

$stackTrace[[8]]$lineNumber
[1] -1

$stackTrace[[8]]$class
[1] "java.lang.StackTraceElement"

$suppressed
list()

$message
[1] "The best matching driver provider org.openqa.selenium.edge.EdgeDriver can't create a new driver instance for Capabilities [{nativeEvents=true, browserName=phantomJS, javascriptEnabled=true, version=, platform=ANY}]\nBuild info: version: '3.0.1', revision: '1969d75', time: '2016-10-18 09:48:19 -0700'\nSystem info: host: 'DTP-FIXE-12', ip: '192.168.254.117', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_111'\nDriver info: driver.version: unknown"

$hCode
[1] 6775785

$class
[1] "org.openqa.selenium.WebDriverException"

$buildInformation
$buildInformation$buildRevision
[1] "1969d75"

$buildInformation$buildTime
[1] "2016-10-18 09:48:19 -0700"

$buildInformation$releaseLabel
[1] "3.0.1"

$buildInformation$hCode
[1] 10081069

$buildInformation$class
[1] "org.openqa.selenium.internal.BuildInfo"

$screen
NULL

Any help would be appreciated. Thank you

johndharrison commented 7 years ago
pJS <- phantom("inst/phantomjs-2.1.1-windows/bin/phantomjs.exe", port = 4445L)
remDr <- remoteDriver(browserName = "phantomJS")

The first line runs phantomJS on port 4445. The second line uses a default port of 4444L. Your error output indicates you are running on Windows 10. The path "inst/phantomjs-2.1.1-windows/bin/phantomjs.exe" does not appear to be a Windows 10 path.

denrou commented 7 years ago

I'm sorry for the delay, and you are absolutely right, the problem came from the path not being set correctly. Thanks again!