在 selenium python webdriver 中,我无法下载扩展名为 .lst 的文本文件
In selenium python webdriver, I'm not able to download a text file with a .lst extension
我对 python webdriver 比较陌生,我一直在尝试使用这段代码来制作它,这样我就可以下载一个扩展名为 .lst
的文本文件:
fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList",2)
fp.set_preference("browser.download.manager.showWhenStarting",False)
fp.set_preference("browser.download.dir","/my/directory")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/lst")
self.driver = webdriver.Firefox(firefox_profile=fp)
当我需要下载 zip 文件并使用 "application/zip" 作为要下载的文件类型时,它工作正常。有人告诉我下载这个文件需要什么吗?
感谢您的宝贵时间和帮助。
据我了解,根据此 MIME Types list,您应该尝试以下操作:
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/plain,application/x-powerpoint")
您也可以切换到Chrome并让它自动下载文件:
options = webdriver.ChromeOptions()
prefs = {
"download.default_directory" : "/some/path",
"download.directory_upgrade": "true",
"download.prompt_for_download": "false",
"disable-popup-blocking": "true"
}
options.add_experimental_option("prefs", prefs)
driver = webdriver.Chrome(chrome_options=options)
我使用此处列出的步骤解决了这个问题:
使用这些步骤,我确定我的 mime 文件类型是 'application/forced-download' 所以我的代码现在看起来像这样:
fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList",2)
fp.set_preference("browser.download.manager.showWhenStarting",False)
fp.set_preference("browser.download.dir","/my/directory")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","application/forced-download")
self.driver = webdriver.Firefox(firefox_profile=fp)
并且我的文件下载无需任何人工交互。感谢@alecxe 的帮助和耐心 ;)
我在 Windows.
上使用 Firefox + Selenium 3x +python3
我的无模式下载代码 window
fp = webdriver.FirefoxProfile ()
fp.set_preference("browser.download.folderList", 2)
fp.set_preference("browser.download.manager.showWhenStarting", False)
fp.set_preference("browser.download.dir", "C:\Your\Folder")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/zip")
driver = webdriver.Firefox(firefox_profile=fp)
其中 application/zip
是您的 MIME 类型的定义。
也许它会对某人有所帮助
我对 python webdriver 比较陌生,我一直在尝试使用这段代码来制作它,这样我就可以下载一个扩展名为 .lst
的文本文件:
fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList",2)
fp.set_preference("browser.download.manager.showWhenStarting",False)
fp.set_preference("browser.download.dir","/my/directory")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/lst")
self.driver = webdriver.Firefox(firefox_profile=fp)
当我需要下载 zip 文件并使用 "application/zip" 作为要下载的文件类型时,它工作正常。有人告诉我下载这个文件需要什么吗?
感谢您的宝贵时间和帮助。
据我了解,根据此 MIME Types list,您应该尝试以下操作:
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/plain,application/x-powerpoint")
您也可以切换到Chrome并让它自动下载文件:
options = webdriver.ChromeOptions()
prefs = {
"download.default_directory" : "/some/path",
"download.directory_upgrade": "true",
"download.prompt_for_download": "false",
"disable-popup-blocking": "true"
}
options.add_experimental_option("prefs", prefs)
driver = webdriver.Chrome(chrome_options=options)
我使用此处列出的步骤解决了这个问题:
使用这些步骤,我确定我的 mime 文件类型是 'application/forced-download' 所以我的代码现在看起来像这样:
fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList",2)
fp.set_preference("browser.download.manager.showWhenStarting",False)
fp.set_preference("browser.download.dir","/my/directory")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","application/forced-download")
self.driver = webdriver.Firefox(firefox_profile=fp)
并且我的文件下载无需任何人工交互。感谢@alecxe 的帮助和耐心 ;)
我在 Windows.
上使用 Firefox + Selenium 3x +python3
我的无模式下载代码 window
fp = webdriver.FirefoxProfile ()
fp.set_preference("browser.download.folderList", 2)
fp.set_preference("browser.download.manager.showWhenStarting", False)
fp.set_preference("browser.download.dir", "C:\Your\Folder")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/zip")
driver = webdriver.Firefox(firefox_profile=fp)
其中 application/zip
是您的 MIME 类型的定义。
也许它会对某人有所帮助