mozilla / geckodriver

WebDriver for Firefox
https://firefox-source-docs.mozilla.org/testing/geckodriver/
Mozilla Public License 2.0
7.03k stars 1.51k forks source link

Problem with RSelenium and geckodriver 0.32.2 #2086

Closed fvalenduc closed 1 year ago

fvalenduc commented 1 year ago

With geckodriver 0.32.2, opening firefox from R with RSelenium doesn't work anymore. This is the very simple code I use:

remDr <- remoteDriver() nb_tries<-0 is_error<-TRUE

while (nb_tries<2 && is_error) { nb_tries<-nb_tries+1 try_server<-try(remDr$open(),silent=TRUE) is_error<-inherits(try_server, "try-error") Sys.sleep(3) }

It gives this result:

[1] "Connecting to remote server"

Selenium message:Expected browser binary location, but unable to find binary in default location, no 'moz:firefoxOptions.binary' capability provided, and no binary flag set on the command line Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53' System info: host: 'WKS13274', ip: '10.62.2.60', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_332' Driver info: driver.version: unknown remote stacktrace:

I tried playing with extraCapabilities without success. Firefox is installed on the standard path and is in the PATH environment variable; but it doesn't work. It worked without problem with geckodriver 0.31.0. Does anybody have a solution to this problem ?

Thanks in advance,

François Valenduc

whimboo commented 1 year ago

Could you please check if it works with 0.32.0 and 0.32.1? It would be good to know which exact version is the first one that's failing. Also is there anything special that we should know about the system configuration? I assume it's not using WSL?

fvalenduc commented 1 year ago

0.31.0 was the latest version with worked correctly. The problem only occurs on windows. On Linux, it works correctly with firefox 110.0 and geckodriver 0.32.0.

whimboo commented 1 year ago

So I have a suspicion. Starting with geckodriver 0.32.0 we are shipping ARM builds and maybe you downloaded the wrong version of geckodriver?

fvalenduc commented 1 year ago

I downloaded the correct version (geckodriver-v0.32.2-win32.zip). Geckodriver is correctly launched by the selenium webdriver from R (with rhe RSelenium package, see https://cran.r-project.org/web/packages/RSelenium/index.html). But geckodriver seems unable to find and launch firefox. Up to 0.32.1, there were win64 builds available, but not anymore with 0.32.2. I incorrectly downloaded the win32 build of version 0.32.2. This one of course can't launch the 64 bits version of firefox. Do you still intend to release win64 builds ?

whimboo commented 1 year ago

If you have a 64bit system you cannot use the 32bit version of geckodriver given that it would query the x86 registry key and won't find Firefox if the 64bit version is installed.

We still release 64bit Windows builds. I just checked and for both the 0.32.1 and 032.2 releases they are listed under the assets:

https://github.com/mozilla/geckodriver/releases/download/v0.32.1/geckodriver-v0.32.1-win64.zip https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-win64.zip

Maybe you have to click on All assets given that GitHub seems to only show a certain amount by default.

fvalenduc commented 1 year ago

Indeed, there is still a 64 bit version. Sorry for having missed it. So there is in fact no bug.

whimboo commented 1 year ago

Good to know! Thanks for your feedback.