В последние годы я несколько раз использовал Rselenium + docker для автоматизации загрузки данных. Я недавно сменил ноутбук и не могу его настроить. В частности, я не понимаю, куда загружаются файлы.
Запуск Docker:
docker run -d -p 4445:4444 selenium/standalone-firefox
Запуск селена, навигация и загрузка:
custom_firefox <- makeFirefoxProfile(
list(
"browser.download.dir" = "~/Downloads",
"browser.helperApps.neverAsk.saveToDisk" = "multipart/x-zip,application/zip,application/x-zip-compressed,application/x-compressed,application/msword,application/csv,text/csv,image/png ,image/jpeg, application/pdf, text/html,text/plain, application/excel, application/vnd.ms-excel, application/x-excel, application/x-msexcel, application/octet-stream"
)
)
url <- "https://unstats.un.org/unsd/trade/classifications/correspondence-tables.asp"
xpath_file <- "/html/body/div[1]/div[4]/div/div/div[1]/table/tbody/tr[2]/td[2]/a" # un
remDr <- remoteDriver(remoteServerAddr = 'localhost',
port = 4445L,
browser = "firefox",
extraCapabilities = custom_firefox
)
remDr$open()
remDr$navigate(url)
csv <- remDr$findElement(using = 'xpath', xpath_file)
csv$clickElement()
remDr$close()
Нет возвращается ошибка, и не может выяснить, загружен файл или нет. Теоретически, если пользовательский профиль firefox настроен правильно, файл должен быть загружен напрямую, без запроса. Любые советы, как решить эту проблему?
Ps: мне нужно получить данные с другого сайта, это всего лишь пример.