python - 如何使用 selenium 在 chrome 中下载 .msi 文件
解决方案
您应该设置Selenium 配置文件以启用下载而不询问:
from selenium import webdriver
profile = webdriver.FirefoxProfile()
profile.set_preference('browser.helperApps.neverAsk.saveToDisk', 'application/octet-stream')
profile.set_preference("browser.safebrowsing.enabled", 'false')
driver = webdriver.Firefox(profile)
driver.get("http://yourpage.com")
"application/octet-stream"
是文件类型,如果您不知道文件类型,请检查MIME 类型
使用 chrome,您应该能够使用:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_experimental_option("prefs", {
"download.default_directory": r"C:\Users\xxx\downloads\Test", # Insert the path where you want your files to be saved!
"download.prompt_for_download": False,
"download.directory_upgrade": True,
"safebrowsing.enabled": True
})
driver = webdriver.Chrome(chrome_options=chrome_options)
另请查看此答案以获取更多信息
推荐阅读
- python - Matplotlib:需要绘制的surfaceplot点的坐标或线框图的rstrides和cstrides的交点
- go - 在 Go 反向代理中的 handleFunc 和 modifyResponse 之间共享上下文
- android - D3 js对Android-Webview中的拖动事件没有反应
- angular - Angular 7 rxjs/operator/debounceTime 对主题重复操作
- aop - 使用 AspectJ 将 toString 方法添加到类
- karate - 调用javascript函数时有效的json变成无效的json
- python - Django 模板正在打印对象表示而不是对象值
- sql - SQL Server:查询连接与多个表和分组依据
- javascript - javascript随机图像生成器
- c# - Unity - 使对象在一个轴上面向相同的方向?不工作?