簡體   English   中英

Python Selenium Headless下載

[英]Python Selenium Headless download

我正在嘗試使用硒下載文件。 我已經搜索了所有內容。

Chrome中如何使用Selenium Python綁定控制文件下載時,有人告訴它可以使用。 但這對我沒有用! 也許我想念什么? 唯一不同的是,我的頁面自動啟動下載了csv文件。

研究了Chrome代碼后,我添加了:

        "safebrowsing_for_trusted_sources_enabled": False

但仍然無法正常工作。

options = Options()
options.add_argument("--disable-notifications")
options.add_argument('--no-sandbox')
options.add_experimental_option("prefs", {
    "download.default_directory": "C:\\Users\\claudiu.ivanescu\\Downloads",
    "download.prompt_for_download": False,
    "download.directory_upgrade": True,
    "safebrowsing_for_trusted_sources_enabled": False
})
options.add_argument('--disable-gpu')
options.add_argument('--disable-software-rasterizer')
options.add_argument('--headless')

感謝支持

如果有人感興趣,請在搜索2天后:)。 我設法使其有效!

我在此評論中找到了錯誤跟蹤的答案: https : //bugs.chromium.org/p/chromium/issues/detail?id=696481#c86

我使用的代碼是:

def enable_download_headless(browser,download_dir):
    browser.command_executor._commands["send_command"] = ("POST", '/session/$sessionId/chromium/send_command')
    params = {'cmd':'Page.setDownloadBehavior', 'params': {'behavior': 'allow', 'downloadPath': download_dir}}
    browser.execute("send_command", params)

if __name__ == '__main__':
    options = Options()
    options.add_argument("--disable-notifications")
    options.add_argument('--no-sandbox')
    options.add_argument('--verbose')
    options.add_experimental_option("prefs", {
        "download.default_directory": "C:\\tmp",
        "download.prompt_for_download": False,
        "download.directory_upgrade": True,
        "safebrowsing_for_trusted_sources_enabled": False,
        "safebrowsing.enabled": False
    })
    options.add_argument('--disable-gpu')
    options.add_argument('--disable-software-rasterizer')
    options.add_argument('--headless')
    driver_path = "C:\\Users\\tmp\\chromedriver.exe"
    driver = webdriver.Chrome(driver_path, chrome_options=options)
    enable_download_headless(driver, "C:/tmp")
    driver.get(url)

也許將來會對其他人有所用...里面可能有很多沒用的東西,但是還沒有時間來改變:)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM