我正在尝试使用 FCC 的电子评论归档系统 (ECFS) 来批量下载个人诉讼中的归档文件。他们有一个 API,可以返回诉讼中的每一份申请。它返回单个文档的 URL,格式如下:
https://www.fcc.gov/ecfs/document/10809709027819/1
然而,虽然这在浏览器中有效,但它只下载一个占位符 HTML 文件,说明当我使用 wget 或 curl 时需要 JavaScript。我尝试在浏览器中检查该页面,但找不到任何类似于实际 PDF 的源 URL 的内容。
有没有办法使用wget或curl来获取实际的PDF?
答案1
我使用 Firefox 的浏览器工具查看了返回 PDF 的请求,并修剪了请求标头以获得返回 PDF 的最小请求。这对我有用:
% curl 'https://www.fcc.gov/ecfs/documents/10809709027819/1' -H 'Referer: https://www.fcc.gov/ecfs/document/10809709027819/1' | file -
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 146k 0 146k 0 0 516k 0 --:--:-- --:--:-- --:--:-- 518k
/dev/stdin: PDF document, version 1.7, 9 page(s)
因此,至少对于此 PDF,看起来所需要做的就是将Referer
标头设置为相同的 URL。