如何通过 Python 使用世界银行 API 下载许多 PDF 文件

里彭

我正在尝试使用 Python 从世界银行档案网站下载许多 pdf 文件(数百个)。API 网络链接可以使用任何选择的术语(例如,国家或部门-教育、健康等)进行定制。

我已尝试使用上述 url 下载特定于越南教育部门的文件的以下代码。URL 包含操作文档,其中包含具有指定条款的所有 pdf 链接。但是,无法下载文件。

import requests
from urllib.parse import urljoin
from bs4 import BeautifulSoup

url = "http://search.worldbank.org/api/v2/wds?format=json&countcode=VN&majdocty_exact=Publications&teratopic_exact=Education&srt=docdt&order=desc"

#Folder to download the files
folder_location = r'J:\New Volume (B)\pdfs'

response = requests.get(url)
soup= BeautifulSoup(response.text, "html.parser")     
for link in soup.select("a[href$='.pdf']"):
    #Name the pdf files 
    filename = os.path.join(folder_location,link['href'].split('/')[-1])
    with open(filename, 'wb') as f:
        f.write(requests.get(urljoin(url,link['href'])).content)

运行代码后我没有发现任何错误,但我也无法下载任何文件。任何帮助将不胜感激。谢谢你。

智能手

使用 response.json(); 不需要BS4

import requests
from urllib.parse import urljoin
from bs4 import BeautifulSoup

url = "http://search.worldbank.org/api/v2/wds?format=json&countcode=VN&majdocty_exact=Publications&teratopic_exact=Education&srt=docdt&order=desc"

#Folder to download the files
folder_location = r'J:\New Volume (B)\pdfs'

response = requests.get(url).json()
for i in response['documents']:
    url=(response['documents'][i].get('pdfurl'))
    if url:
        filename = os.path.join(folder_location,url.split('/')[-1])
        with open(filename, 'wb') as f:
            f.write(requests.get(url).content)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从世界银行的数据集下载CSV文件

来自分类Dev

如何使用python通过https下载pdf文件

来自分类Dev

如何使用 Python 下载多个 PDF 文件?

来自分类Dev

世界银行API查询

来自分类Dev

从 API 下载 pdf 文件

来自分类Dev

如何使用Python在网页上下载PDF文件

来自分类Dev

如何使用python请求库从Web下载PDF文件

来自分类Dev

如何通过bim360 api或sdk下载计划pdf文件?

来自分类Dev

如何使用php下载多个PDF文件

来自分类Dev

如何使用PHP下载生成的pdf文件?

来自分类Dev

使用Addon SDK API下载许多文件时,Firefox UI变得无响应

来自分类Dev

如何修复通过 PHP 下载时损坏的 PDF 文件

来自分类Dev

如何使用python或curl下载pdf?

来自分类Dev

使用python +硒问题下载pdf文件

来自分类Dev

使用Python自动下载嵌入式PDF文件

来自分类Dev

pandas-datareader世界银行API损坏

来自分类Dev

使用python下载pdf

来自分类Dev

如何使用R或Python通过Google学术搜索查询下载学术论文的PDF

来自分类Dev

如何使用Python 2.7通过HTTP使用多线程下载文件(异步下载)

来自分类Dev

使用BlockingQueue下载PDF文件

来自分类Dev

使用JavaScript下载PDF文件

来自分类Dev

使用Python通过Google Drive API下载文件时出现问题

来自分类Dev

使用Python通过Internet下载文件

来自分类Dev

使用Python通过SSH下载文件

来自分类Dev

通过SSH一次下载许多文件

来自分类Dev

如何使用For Loop通过API从Google云端硬盘下载文件

来自分类Dev

如何使用ExtJS 4.2.1下载pdf文件?

来自分类Dev

HTML:如何使用链接下载pdf文件

来自分类Dev

如何防止PDF文件使用PHP或JavaScript下载或打印?