Как устранить сообщение об ошибке RSelenium «Не удалось подключиться к локальному порту 4444: соединение отказано»? - PullRequest
0 голосов
/ 20 декабря 2018

Я пытаюсь использовать RSelenium с Docker для сканирования веб-сайта.Однако у меня есть некоторые проблемы при попытке заставить RSelenium / Docker работать.

В частности, я установил Docker на свой компьютер, который, кажется, работает нормально (я вижу образ китаниже, когда я его открываю).

Docker screenshot

В R я затем без проблем запускаю следующий код и вижу ожидаемый результат.

shell('docker run -d -p 4445:4444 selenium/standalone-chrome')
shell('docker ps')
CONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS              PORTS                    NAMES
d7de815ce644        selenium/standalone-chrome   "/opt/bin/entry_poin…"   13 minutes ago      Up 13 minutes       0.0.0.0:4445->4444/tcp   zen_mclean

Но когда я запускаю следующий код, я всегда получаю следующее сообщение об ошибке:

remDr <- RSelenium::remoteDriver(remoteServerAddr = "localhost",
                             port = 4444,
                             browserName = "chrome")
remDr$open()
[1] "Connecting to remote server"
Error in checkError(res) : 
  Undefined error in httr call. httr output: Failed to connect to localhost port 4444: Connection refused

Я не уверен, что здесь происходит (я новичок в чистке).Кто-нибудь может помочь мне разобраться, что делать здесь?

Если это поможет, я использую Windows 10.

Ответы [ 2 ]

0 голосов
/ 21 декабря 2018

Мне удалось решить проблему, удалив Docker Toolbox и VMBox, которые я использовал, и вместо этого установив последнюю версию Docker с их веб-сайта.

0 голосов
/ 21 декабря 2018

В докере вы связали свои хосты порт 4445 с портом селена-драйвера 4444.

Это означает, что если вы запускаете R на вашем хосте, вам нужно указать порт =4445

Это решает проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...