ropensci / RSelenium

An R client for Selenium Remote WebDriver

Home Page:https://docs.ropensci.org/RSelenium

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RSelenium and selenium > 4.8.3

fvalenduc opened this issue · comments

RSelenium works fine with docker images up to selenium 4.8.3. However, it doesn't work anymore with selenium 4.9.0. The changelog says that support for the Json Wire protocol has been removed from selenium grid. Could it be the cause of the problem ?

remDr$open() doens't work and hangs for around 30 seconds and then returns this:

remDr$open()
[1] "Connecting to remote server"
$id
[1] NA

Is the removal of the json wire protocol indeed the cause of the problem ? If so, are there plans to make RSelenium compatible with newer versions of selenium ?

I think you are correct.
Selenium4 series dropped support for json wire protocol completely, and currently RSelenium only works with json wire protocol.
Selenium 4 partly works, like 'remDr$open()' works but 'remDr$closeall()' does not.
I don't think there is a plan to implement the newer webdriver protocol in RSelenium.

I wonder what alternatives there are for RSelenium, if any.
It has been working amazingly well and stable for me for many years.

Well, there is chromote (https://github.com/rstudio/chromote and https://cran.r-project.org/web/packages/chromote/index.html) which uses the ChromeDevTools protocol. Off course this will only work with chrome. I didn't find an alternative for firefox yet, beside switching to Python.

I recently made an RSelenium alternative that works with Selenium 4:
https://ashbythorpe.github.io/selenium-r/