rwindowsfirefoxrselenium

Rselenium - How to disable images in Firefox profile


How can image downloading be disabled when using Firefox in Rselenium? I want to see if doing so makes a scraping script faster.

I've read the Reselnium package manual including the sections on getFirefoxProfile & makeFirefoxProfile.

I've found this link that shows how to handle chromedriver.

I can disable images for a Firefox instance that I manually open in Windows 10 but Rselenium does not appear to use that same profile.


Solution

  • Previously you would need to set the appropriate preference (in this case permissions.default.image) however there is now an issue with firefox resetting this value see:

    https://github.com/seleniumhq/selenium/issues/2171

    a work around is given:

    https://github.com/gempesaw/Selenium-Remote-Driver/issues/248

    implementing this in RSelenium:

    library(RSelenium)
    fprof <- makeFirefoxProfile(list(permissions.default.image = 2L,
                                     browser.migration.version = 9999L))
    rD <- rsDriver(browser = "firefox", extraCapabilities = fprof)
    remDr <- rD$client
    remDr$navigate("http://www.google.com/ncr")
    remDr$screenshot(display = TRUE)
    
    # clean up
    rm(rD)
    gc()