避免在Python / selenium自动化中下载文件对话框

时间:2012-11-29 06:45:27

标签: python selenium automation

我正在使用此代码自动化流程,该流程将在没有提示的情况下下载Winzip文件。 但它似乎不起作用

profile = webdriver.firefox.firefox_profile.FirefoxProfile()
profile.set_preference('browser.helperApps.neverAsk.saveToDisk',("application/zip,
                                                   application/octet-stream"))
profile.set_preference('browser.download.folderList', 2)
profile.set_preference('browser.download.dir', '/home/jack/DOWNLOAD')
self.driver = webdriver.Firefox(firefox_profile=profile)

我仍然看到在自动化时打开对话框。

1 个答案:

答案 0 :(得分:3)

我通过提取下载链接的href并使用python urllib模块解决了这种情况。

使用以下代码,可以下载文件并将其另存为不同的文件名。

import urllib
url = driver.find_element_by_link_text("Download").get_attribute("href");
urllib.urlretrieve(url, "saveasfilename")