获取webapp提供的pdf文件

Get pdf file provided by webapp

我想下载多个旧报纸的pdf文件。特别是看起来像 this or this 的文件。我的问题是,当我尝试使用 requestswget 自动执行此过程时,因为网站没有为您提供实际的 pdf 文件,所以我无法获得实际文件。

有没有办法自动执行此过程并使用 Python 下载实际文件?

对于这个特定的网页,页面是从可预测的 url:

这太有规律了,我什至都懒得从页面中提取它来解决这个问题:我只是自己生成 url,为它们每个做一个 requests.get(),然后用 PyPdf2.

将它们拼接在一起

更普遍的问题是:我怎么知道 url?查看浏览器的开发工具:

一般方法

这类问题基本上有两种解决方法:

  • 从页面中提取所需的参数(查看页面如何构建它需要的 urls),或者
  • 运行 一个真正的浏览器,带有类似 selenium 的东西,并自动化它。

有时您会很幸运,并且有一个真正的 api 旨在帮助您做到这一点。像这样查看 public 存档数据时很常见(在法国,BNF 的 apis 非常好,但我不知道什么是意大利语,如果有的话)。