selenium-webdriver Файл загрузки всплывающее при нажатии на ссылку открывает новое окно, которое преобразуется в поле загрузки? - PullRequest
0 голосов
/ 12 февраля 2020

У меня есть все мои настройки для загрузки файлов без всплывающего окна

def dl_driver(dl_path,display):
    pf = webdriver.FirefoxProfile()
    pf.set_preference("browser.download.folderList", 2)
    pf.set_preference("browser.download.manager.showWhenStarting", False)
    pf.set_preference("browser.download.dir", dl_path)
    pf.set_preference("browser.helperApps.neverAsk.saveToDisk",
                      "text/plain,text/x-csv,text/csv,application/vnd.ms-excel,application/csv,"
                      "application/x-csv,text/csv,text/comma-separated-values,text/x-comma-separated-values,"
                      "text/tab-separated-values,application/pdf")
    if display.lower() == 'on':
        driver = webdriver.Firefox(firefox_profile=pf)
    else:
        options = Options()
        options.headless = True
        driver = webdriver.Firefox(options=options, firefox_profile=pf)

Это работает в большинстве случаев.

Однако я сталкиваюсь со странной проблемой

Когда я щелкаю ссылку, которая открывает новое окно, а затем ссылка, открываемая в этом окне, преобразуется в приглашение / коробку загрузки '.csv' .

Что я должен изменить, чтобы убедиться, что окно загрузки / всплывающее окно не отображается?

HTML:

<button id="" class="was-btn was-btn-secondary was-my-downloads-download-btn" style="">Download</button>

Согласно комментарию Я должен искать target Я не уверен, как искать это. Есть ли способ поиска целевой ссылки? Или открыть нажатую ссылку в той же вкладке?

TIA

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