我正在与 .pdf
合作仅在我公司的网站上提供的文件。我不知道有什么方法可以下载它们并将其存储在一个文件夹中。
我点击获取 .pdf
的链接文件具有以下源代码:
<a href="javascript:propertiesView('documentName')">
当我点击链接时,出现 .pdf
文件会在新的浏览器窗口中弹出,没有 url,也没有源代码。我认为没有办法操纵 .pdf
直接,然后我怎样才能保存它以便操作 .pdfs
从文件夹?
谢谢
最佳答案
您可能会很幸运,只要告诉您的浏览器始终将 PDF 文件保存到磁盘(归功于 Dirk ):
firefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/pdf");
如果这不起作用,您可能可以使用 switchTo()
方法遍历所有打开的窗口/选项卡。尝试这样的操作来深入了解您打开的窗口(归功于 Prashant Shukla ):
public void getWindows() {
Set<String> windows = driver.getWindowHandles();
for (String window : windows) {
driver.switchTo().window(window);
System.out.println(driver.getTitle());
}
}
下载文件的非 Selenium 解决方案是使用 apache-commons 库(归功于 Shengyuan Lu ):
org.apache.commons.io.FileUtils.copyURLToFile(URL, File)
但这需要您知道窗口的 URL,您可能可以使用我提到的第二种方法 (driver.switchTo()
) 和 driver.getCurrentUrl 获取该 URL ()
.
关于java - 如何保存在浏览器窗口中弹出的没有 url 的 .pdf 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18968027/