RSelenium за прокси - PullRequest
       33

RSelenium за прокси

0 голосов
/ 17 мая 2018

Я пытаюсь использовать RSelenium.Вот что я делаю:

library(RSelenium)  
driver<- rsDriver(browser=c("chrome"))
remDr <- driver[["client"]]
remDr$open()

возвращает
$ id
[1] NA

remDr$navigate("http://www.google.com")

(возвращает NULL)

remDr$getCurrentUrl()

возвращает пустой список

Я думаю, что этот неутешительный результат может быть из-за того, что я за корпоративным прокси.

Как я могу передать http прокси в браузер селена?

Спасибо

Ответы [ 2 ]

0 голосов
/ 20 июня 2019

Я использую RSelenium с Docker.

Вот мой вариант:

# connect to docker. 
# need to run in terminal (ctrl + alt + enter)
docker run -d -p  4445:4444 selenium/standalone-chrome:3.5.3
eCap <- list(chromeOptions = 
             list(args = list("--proxy-server=http://47.254.69.158:9999")))
remDr <- remoteDriver(remoteServerAddr = "localhost",
                  port = 4445L,
                  browserName = "chrome",
                  extraCapabilities = eCap)
remDr$open()
remDr$navigate("https://ipinfo.io/")
remDr$screenshot(display = TRUE)

Итак, я получил это это

Если у вас все еще есть проблемы, попробуйте переключиться на другой прокси и /или перезагрузите Docker.

Надеюсь, это будет полезно.

0 голосов
/ 21 мая 2018

Вам нужно использовать extraCapabilities и установить прокси, используя тот же

cprof <- list(chromeOptions = 
                  list(args = list("--proxy-server=http://118.69.61.212:53281")))

driver<- rsDriver(browser=c("chrome"), extraCapabilities = cprof)
driver$client$navigate("http://ipinfo.io")

И вы можете видеть, что Chrome теперь использует конфигурацию прокси

Chrome proxy

...