如何自动从给定的网页下载多个 PDF?

如何自动从给定的网页下载多个 PDF?

我正在尝试从此链接. 点击阅读 PDF,它会打开一个新窗口,其中包含 PDF。单击下载按钮后,它会打开一个对话框并要求用户指定保存文件的位置。

打开相关电子书的网页后,我想自动执行以下步骤:

  1. 阅读 PDF被点击。窗口在新窗口中打开。
  2. 下载图标被单击。出现对话框并要求指定文件名和位置。
  3. 提供的默认名称有点乱。因此,像前言内容等等粘贴在那里,这是在下载链接前面提到的,并且是之前复制的。

我想为很多电子书自动执行上述步骤。如果链接位于非 JavaScript 表单,使用某种下载管理器下载会很容易。

(PS:给定的网页可能没有包含所有阅读 PDF链接已激活,但它们都在我所在位置的代理后面处于活动状态。)

答案1

我为您编写了以下 JavaScript:

var ar = $('a.pdf-icon').each(函数(a)
{
  var ar = $(this).attr('onclick').split("'");
  var url =“http://ebooks.cambridge.org/open_pdf/”
           + ar[3]
           + "?pubCode=CUP&urlPrefix=cambridge&productCode=cbo";   
  alert("按“确定”进行下一次下载");
  窗口.打开(url);
});

要执行它,请打开您在问题中链接的页面,打开 JavaScript 控制台 (CTRL+SHIFT+I),然后将上述代码粘贴到控制台中并按回车键。然后它将下载所有链接的 PDF。

请注意:

  • 我在 Chrome 和 Firefox 上尝试过,都可以。
  • 您可能需要禁用弹出窗口拦截器功能,否则它将不起作用
  • 您可能需要禁用浏览器中的所有 PDF 插件,否则 PDF 可能会显示在插件中,而不是被下载
  • 如果通过代理查看时页面的源代码不同,则可能需要修改脚本。

相关内容