本文將為大家介紹如何使用Python下載PDF文件,適合初學者上手實踐。
一、安裝必要的庫
在Python中,我們需要使用urllib和requests庫來獲取PDF文件的鏈接,並下載文件。以下是安裝的代碼示例:
!pip install urllib
!pip install requests
二、獲取PDF鏈接
要下載PDF文件,我們需要首先獲取PDF文件的鏈接。通常,文件鏈接是HTML文檔中的一個直接鏈接,例如“http://example.com/abc.pdf”。
我們可以使用Python的urllib庫中的urlopen方法來打開HTML文件,並使用BeautifulSoup庫解析HTML文件。
以下是獲取PDF鏈接的代碼示例:
from bs4 import BeautifulSoup
from urllib.request import urlopen
url = "http://example.com/page.html"
html_page = urlopen(url)
soup = BeautifulSoup(html_page)
links = []
for link in soup.findAll('a'):
links.append(link.get('href'))
pdf_links = [l for l in links if l.endswith('.pdf')]
三、下載PDF文件
當我們獲得了PDF文件的鏈接列表之後,就需要將這些文件下載到我們的計算機上。相信對於有經驗的Python開發者,這是一件很容易的事情。我們可以使用Python的requests庫發出HTTP請求,並使用Python內置的open函數將文件保存在本地。
以下是下載PDF文件的代碼示例:
import requests
url = "http://example.com/abc.pdf"
response = requests.get(url)
with open("abc.pdf", "wb") as fp:
fp.write(response.content)
四、使用循環下載多個PDF文件
假設我們需要批量下載某個網站的PDF文件。我們完全可以使用之前獲取PDF鏈接的方法,並使用Python中的for循環語句來完成批量下載。
以下是批量下載PDF文件的代碼示例:
from bs4 import BeautifulSoup
import requests
url = "http://example.com/pdf_page.html"
html_page = urlopen(url)
soup = BeautifulSoup(html_page)
links = []
for link in soup.findAll('a'):
links.append(link.get('href'))
pdf_links = [l for l in links if l.endswith('.pdf')]
for link in pdf_links:
response = requests.get(link)
file_name = link.split("/")[-1]
with open(file_name, "wb") as fp:
fp.write(response.content)
五、總結
本文介紹了如何使用Python下載PDF文件,包括獲取PDF鏈接,下載PDF文件,批量下載PDF文件等內容。對於Python初學者來說,這些代碼示例非常實用,可以幫助他們更好地理解Python的基礎知識。
原創文章,作者:OVAOT,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/375313.html