在Python中下载多个PDF

时间:2019-07-16 11:14:34

标签: python pdf web-scraping python-requests

我从网站上抓取了pdf链接列表(如它们的网址),并将其保存在txt文档中。我已经检查过了,它们是一个字符串。现在我需要全部下载它们。 我的代码在Jupyter Notebook中有效,但是当我尝试打开PDF时,它会打开Internet Explorer,然后提示“无法打开PDF”。

我知道这适用于单个pdf链接(文件名/数据周围没有str()),但是如何使它与多个链接一起使用?

这是我的代码:

with open('minutelinks.txt', 'r') as file:
    data = file.read()

urls = (str(data))
import requests 
r = requests.get(urls)

with open("gmcaminutes.pdf", "wb") as code:
    code.write(r.content)

它保存了pdf,但无法打开它。

理想情况下,我希望一个PDF以及从字符串中下载的所有PDF。 谢谢

1 个答案:

答案 0 :(得分:1)

尝试:

from PyPDF2 import PdfFileMerger
import requests
urls = ['https://www.tutorialspoint.com/python/python_tutorial.pdf', "https://www.guru99.com/pdf/c_programming_preview.pdf"]

merger = PdfFileMerger()
for url in urls:
    response = requests.get(url)
    title = url.split("/")[-1]
    with open(title, 'wb') as f:
        f.write(response.content)
    merger.append(title)

merger.write("result.pdf")
merger.close()