【问题标题】:Selenium in Python - The download dialogue still opensPython 中的 Selenium - 下载对话框仍然打开
【发布时间】:2015-05-04 03:23:28
【问题描述】:

我已经应用了所有配置以防止弹出下载窗口,但仍然出现,即使在FF中的Option中,配置设置为“保存文件到”。它让我发疯,请帮助:

    profile = webdriver.firefox.firefox_profile.FirefoxProfile()

    profile.set_preference("browser.download.folderList", 2) # custom location
    profile.set_preference("browser.download.manager.showWhenStarting", False)
    profile.set_preference("browser.download.dir", path)
    profile.set_preference('browser.helperApps.neverAsk.saveToDisk', ('text/tsv'))
    profile.set_preference("webdriver_enable_native_events", False)

    profile.set_preference("browser.download.manager.scanWhenDone",False)
    profile.set_preference("browser.download.manager.useWindow",False)
    profile.set_preference("browser.helperApps.alwaysAsk.force",False)
    #profile.set_preference('browser.download.dir', os.getcwd())   

'text/plain, application/vnd.ms-excel, text/tsv, text/comma-separated-values, application/octet-stream, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet')

    profile.update_preferences()   

    driver = webdriver.Firefox(firefox_profile=profile)
    driver.implicitly_wait(60)
    base_url ="the base url"

【问题讨论】:

  • 为什么我在这个问题上得了-1?

标签: python python-2.7 selenium selenium-webdriver


【解决方案1】:

试试

profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/force-download")

无论如何,以下对我有用:

profile.set_preference("browser.download.folderList", 2)
profile.set_preference("browser.download.manager.showWhenStarting", False)

profile..set_preference("browser.helperApps.neverAsk.saveToDisk", "application/force-download")
profile..set_preference("browser.download.panel.shown", True)

【讨论】:

  • 它对我不起作用。甚至可以从 set_preference 设置下载目录,但仍然出现下载窗口。我觉得要么 driver.implicitly_wait(60) 带来问题,要么是下载文件的 tsv 格式。因为它适用于我电脑上的其他下载操作,除了这个。顺便说一句谢谢
【解决方案2】:

对于我使用的 FireFox 版本 91.3.0esr:

self.profile.set_preference(
            "browser.helperApps.neverAsk.saveToDisk",
            "text/tab-separated-values")

我的其他 Firefox 配置文件设置与 OP 相同:

self.profile.set_preference("browser.download.folderList", 2)
self.profile.set_preference("browser.download.manager.showWhenStarting", False)
self.profile.set_preference("browser.download.dir", Path)

所以,对于我正在使用的 tsv:'text/tab-separated-values'

我从网络的 FireFox 调试工具得到这个> 我刚刚打开调试器 F-12,然​​后单击网络选项卡。然后只需单击文件下载链接,文件传输的详细信息在响应头中:Content-Type。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-28
    • 2011-01-03
    • 1970-01-01
    • 1970-01-01
    • 2021-06-25
    • 2011-05-30
    • 1970-01-01
    • 2023-03-06
    相关资源
    最近更新 更多