繁体   English   中英

自动化的Chromedriver PDF下载是否显示按钮?

[英]Automated Chromedriver PDF Download Brings Up Button?

我正在使用Selenium下载通过许多复杂的登录层和其他浏览器操作访问的嵌入式pdf。 我已经根据其他各种帖子中的说明为我的chromedriver设置了以下选项:

    chromedriver = r'C:\Users\cj9250\AppData\Local\Continuum\anaconda3\chromedriver.exe'
    download_dir = "C:\\Users\\CJ9250\\Downloads\\" # for linux/*nix, download_dir="/usr/Public"

    options = webdriver.ChromeOptions()
    profile = {
            "plugins.plugins_list": [{"enabled": False, "name": "Chrome PDF Viewer"}], 
           "download.default_directory": download_dir , 
           "download.extensions_to_open": "applications/pdf",
           "plugins.always_open_pdf_externally": True,
           "download.prompt_for_download": False,
           "safebrowsing.enabled": True
           }
    options.add_experimental_option("prefs", profile)
    browser = webdriver.Chrome(chromedriver, chrome_options=options)

但是,在下载到我的指定目录之前,我必须单击此框:

在此处输入图片说明

“打开”元素没有可通过检查器找到的xpath。 我猜想这是ChromeDriver的某种内部安全设置,但我找不到解决方法。

我的最终目标是在打开的Selenium测试页中下载嵌入式PDF,这似乎是唯一建议的操作方法。

reportSho.do打开

我不确定为什么它起作用,但是我将个人资料变量修改为:

profile = {
            "plugins.plugins_list": [{"enabled": False, "name": "Chrome PDF Viewer"}], # Disable Chrome's PDF Viewer
           "download.default_directory": download_dir , 
           "download.extensions_to_open": "applications/pdf",
           "safebrowsing.enabled": False
           }

从那里,我可以使用打开按钮在页面上获得框架元素。 元素属性之一具有URL。 当我指示浏览器转到URL时,它将文件下载到我的指定目录中!

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM