【发布时间】:2021-06-23 05:59:08
【问题描述】:
我已经尝试了所有可能的方法来从 Chrome 下载 PDF 报告,而无需打开新的 PDF 查看器选项卡。我想直接在我的本地驱动器上下载 PDF。我正在使用 Coypu 开发我的自动化框架 我使用的代码如下:
BrowserSession _session;
ChromeOptions options = new ChromeOptions();
String downloadFilepath = @"C:\Users\3682143\Downloads";
Dictionary<String,Object> chromeOptionsMap = new Dictionary<String, Object>();
chromeOptionsMap.Add("plugins.plugins_disabled", new String[] {"Chrome PDF Viewer"});
chromeOptionsMap.Add("download.default_directory", downloadFilepath);
chromeOptionsMap.Add("plugins.always_open_pdf_externally", true);
chromeOptionsMap.Add("download.prompt_for_download", false);
chromeOptionsMap.Add("pdfjs.disabled", true);
options. AddUserProfilePreference("prefs", chromeOptionsMap);
DesiredCapabilities desiredCap = DesiredCapabilities.Chrome();
desiredCap.SetCapability(CapabilityType.AcceptSslCertificates, true);
desiredCap.SetCapability(ChromeOptions.Capability, options);
_session = new BrowserSession(sessionConfig, new CustomExplorerProfileSeleniumWebDriver(desiredCap));
【问题讨论】:
-
尝试使用此处找到的 AutoItX(autoitscript.com/site/autoit/downloads) 基本上,我的建议是尝试并提示浏览器的“保存”窗口(尝试将键发送到浏览器,例如 ctrl+s 或 'something '),在要保存的窗口打开后,使用我上面提到的库来控制窗口。我认为您可以使用 AutoItX 在页面上导航,也许您可以下载您的文件。您的解决方案可能与我刚才建议的有点相去甚远,但不妨试试 AutoItX,您的浏览器上还会有一个工具可以帮助您。