用Selenium 爬虫下载文件,解除Chrome 下载警告 (Keep or Discard),设置下载目录的方法

写在前面的话

我们的描述,运用都是基于Ubuntu 的运行环境

Chrome : Version 77.0.3865.90 (Official Build) (64-bit)
OS : Ubuntu 18.04
python : 2.7, 3.4+
selenium : 3.141.0


场景描述

当我们用Selenium 爬虫来下载文件的时候,这个时候需要对Chrome 进行一些额外的设置,保证用Chrome来浏览下载文件的时候,不会提示我们 保留(Keep)或者抛弃(Discard),也就是自动保存。

一般Chrome默认的下载,如果他认为这是一个比较危险的文件,这个时候可能需要询问用户是不是保留或者删除。一般需要用户自己点击,我们现在要完成的事情就是让它不询问我们,然后自动下载保存到我们想要保存的目录下面即可。

from selenium import webdriver

download_dir = "/pathToDownloadDir"
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
preferences = {"download.default_directory": download_dir ,
               "directory_upgrade": True,
               "safebrowsing.enabled": True }
chrome_options.add_experimental_option("prefs", preferences)
   try:
        driver = webdriver.Chrome(chrome_options=chrome_options,\
        executable_path=r'/pathTo/chromedriver')
    except:
        continue
driver.get("urlFileToDownload");

说明: “safebrowsing.enabled”: True参数。增加了这个参数。就不会弹出保存与放弃的提示


Reference

https://blog.csdn.net/weixin_30296405/article/details/99854704

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章