首页 > 解决方案 > 如何设置 ChromeOptions 以设置在 Python 中使用 Selenium 下载网页的默认目录和文件名?

问题描述

下面的示例只是打开谷歌,并将网页下载为 pdf。我将目录设置为 C 盘,但该文件仍显示在下载中。还有设置文件名的设置吗?而不是谷歌,我希望下载的文件被标记为测试。提前致谢。

# Import Packages
import json
from selenium import webdriver

appState = {
    "recentDestinations": [
        {
            "id": "Save as PDF",
            "origin": "local",
            "account": ""
        }
    ],
    "selectedDestinationId": "Save as PDF",
    "version": 2

}

profile = {
    'printing.print_preview_sticky_settings.appState': json.dumps(appState),
    'download.default_directory': r'C:\\'
}

chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option('prefs', profile)
chrome_options.add_argument('--kiosk-printing')

browser = webdriver.Chrome(options=chrome_options)
browser.get('https://www.google.com/')
browser.execute_script('window.print();')

标签: pythonseleniumgoogle-chromedirectoryselenium-chromedriver

解决方案


它可能不是您正在寻找的东西,但如果您使用browser.save_screenshot('path/you/want/saved/to.png')

然后你可以直接通过 selenium 截屏并指定你想要保存文件的位置。

您还可以使用一个变量来定义要保存屏幕截图的目录的路径,以便更通用。


推荐阅读