Не удается загрузить файл через веб-драйвер Selenium chrome в Python - PullRequest
0 голосов
/ 01 марта 2020

Я использую Selenium webdriver для очистки сайта и загрузки файла из него в папку. по какой-то причине, если я изменяю путь загрузки по умолчанию от chrome до ChromeOptions(), когда я click() указывает ссылку на скачивание, файл показывает failed - download error в панели загрузки в нижней части окна. Я убедился, что драйверы chrome и chrome обновлены, но он все еще не работает.

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

from selenium import webdriver

download_path = select_directory()
options = webdriver.ChromeOptions()
preferences = {"download.default_directory": download_path}
options.add_experimental_option("prefs", preferences)
browser = webdriver.Chrome(chrome_options=options)

А вот код, который я использую для загрузки самого файла.

from selenium import webdriver

table = browser.find_element_by_id("tblDocs")
documents_info = table.find_elements_by_class_name("clsTableRowNormal")
for document in documents_info:
    str = document.find_element_by_class_name("clsTableCell").text
    if str.find("תשריט") > -1:
        document.find_element_by_tag_name("img").click()

Кто-нибудь знает, как я могу загрузить файл в указанный каталог c? Я подумал о том, возможно, загрузить файл в папку по умолчанию и переместить файл оттуда по желаемому пути, но я не знаю, как получить папку по умолчанию через селен. Любая помощь будет оценена, спасибо!

1 Ответ

0 голосов
/ 02 марта 2020

Таким образом, селен, по-видимому, не может загрузить путь с / в строке пути. Мне пришлось изменить select_directory(), чтобы вернуть строку пути к файлу, используя только \\. Спасибо за помощь!

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