Python利用PyPDF2庫實現(xiàn)輕松提取PDF文本
當(dāng)需要從PDF文件中提取文本時,Python中的PyPDF2庫是一個非常有用的工具。無論您是需要分析PDF文檔中的內(nèi)容還是需要在文檔中搜索特定的信息,PyPDF2都可以幫助您輕松實現(xiàn)這些任務(wù)。
在本文中,我們將探討如何使用PyPDF2庫提取PDF文件中的文本,并提供一些示例代碼來幫助您入門。
安裝PyPDF2庫
首先,您需要安裝PyPDF2庫。您可以使用pip來安裝它:
pip install PyPDF2
打開PDF文件,并讀取內(nèi)容
讓我們從一個簡單的示例開始。假設(shè)我們有一個名為"sample.pdf"的PDF文件,并且我們想要提取其中的文本內(nèi)容。
import PyPDF2
# 打開PDF文件
pdf_file = open('YOLOv1.pdf', 'rb')
# 創(chuàng)建一個PDF對象
pdf_reader = PyPDF2.PdfReader(pdf_file)
# 獲取PDF文件中的頁面數(shù)量
num_pages = len(pdf_reader.pages)
# 創(chuàng)建一個空字符串,用于存儲提取的文本
text = ""
# 循環(huán)遍歷每一頁并提取文本
for page_num in range(num_pages):
page = pdf_reader.pages[page_num]
text += page.extract_text()
# 關(guān)閉PDF文件
pdf_file.close()
# 打印提取的文本
print(text)以上代碼將打開名為"YOLOv1.pdf"的PDF文件,遍歷每一頁并將文本內(nèi)容提取到一個字符串中。最后,它會打印提取的文本。

提取結(jié)果
高級用法
除了基本的文本提取,PyPDF2還提供了其他功能,例如合并多個PDF文件、旋轉(zhuǎn)頁面、添加書簽等。讓我們詳細討論一些高級用法,并提供相應(yīng)的代碼示例。
合并多個PDF文件
有時,您可能需要將多個PDF文件合并成一個文件。PyPDF2允許您執(zhí)行此操作。
from PyPDF2 import PdfWriter
merger = PdfWriter()
for pdf in ["M:\YOLOv1.pdf", "M:\YOLOv2.pdf"]:
merger.append(pdf)
merger.write("M:\merged.pdf")
merger.close()以上代碼將打開名為’YOLOv1.pdf’和’YOLOv1.pdf’的兩個PDF文件,將它們的內(nèi)容合并到一個新的PDF文件’merged.pdf’中。
旋轉(zhuǎn)頁面
有時,PDF文件中的頁面可能需要旋轉(zhuǎn)。使用PyPDF2,您可以旋轉(zhuǎn)頁面以適應(yīng)您的需求。
import PyPDF2
# 打開PDF文件
pdf_file = open('M:\YOLOv1.pdf', 'rb')
# 創(chuàng)建PDF對象
pdf_reader = PyPDF2.PdfReader(pdf_file)
# 創(chuàng)建一個新的PDF對象
pdf_writer = PyPDF2.PdfWriter()
# 旋轉(zhuǎn)第一頁90度
page = pdf_reader.pages[0]
page.rotate(90)
pdf_writer.add_page(page)
# 將未旋轉(zhuǎn)的頁面添加到新文件中
for page_num in range(1, len(pdf_reader.pages)):
page = pdf_reader.pages[page_num]
pdf_writer.add_page(page)
# 創(chuàng)建一個新的PDF文件并保存旋轉(zhuǎn)后的內(nèi)容
output_pdf = open('M:\YOLOv1-rd.pdf', 'wb')
pdf_writer.write(output_pdf)
# 關(guān)閉所有打開的文件
pdf_file.close()
output_pdf.close()以上代碼將打開名為’YOLOv1.pdf’的PDF文件,旋轉(zhuǎn)第一頁90度,并將旋轉(zhuǎn)后的頁面保存到新的PDF文件’YOLOv1-rd.pdf’中。
添加書簽
您還可以使用PyPDF2在PDF文件中添加書簽,以便更輕松地導(dǎo)航和查找內(nèi)容。
以上代碼將打開名為’YOLOv1.pdf’的PDF文件,將其內(nèi)容復(fù)制到新的PDF文件’YOLOv1-copy.pdf’中,并在第一頁和第六頁添加了兩個書簽。
import PyPDF2
# 打開PDF文件
pdf_file = open('M:\YOLOv1.pdf', 'rb')
# 創(chuàng)建PDF對象
pdf_reader = PyPDF2.PdfReader(pdf_file)
# 創(chuàng)建一個新的PDF對象
pdf_writer = PyPDF2.PdfWriter()
# 循環(huán)遍歷每一頁并將頁面添加到新文件中
for page_num in range(len(pdf_reader.pages)):
page = pdf_reader.pages[page_num]
pdf_writer.add_page(page)
# 添加書簽
pdf_writer.add_bookmark('Chapter 1', 0) # 在第一頁添加一個名為"Chapter 1"的書簽
pdf_writer.add_bookmark('Chapter 2', 5) # 在第六頁添加一個名為"Chapter 2"的書簽
# 創(chuàng)建一個新的PDF文件并保存帶有書簽的內(nèi)容
output_pdf = open('M:\YOLOv1-copy.pdf', 'wb')
pdf_writer.write(output_pdf)
# 關(guān)閉所有打開的文件
pdf_file.close()
output_pdf.close()結(jié)論
使用PyPDF2庫,您可以輕松地從PDF文件中提取文本,這對于數(shù)據(jù)分析、信息檢索和自動化任務(wù)非常有用。希望這篇文章和示例代碼有助于您開始使用PyPDF2進行PDF文本提取。如若需要其他高級用法,例如比例調(diào)整、放縮等操作,可以訪問PyPDF2的官方網(wǎng)站查看其他示例。
以上就是Python利用PyPDF2庫實現(xiàn)輕松提取PDF文本的詳細內(nèi)容,更多關(guān)于Python PyPDF2提取PDF文本的資料請關(guān)注腳本之家其它相關(guān)文章!
- Python使用PyPDF2庫實現(xiàn)向PDF文件中插入內(nèi)容
- Python使用PyPDF2?Pillow庫來將PDF文件轉(zhuǎn)圖片
- PyPDF2讀取PDF文件內(nèi)容保存到本地TXT實例
- 解決pyPdf和pyPdf2在合并pdf時出現(xiàn)異常的問題
- Python實現(xiàn)PyPDF2處理PDF文件的方法示例
- Python中使用pypdf2合并、分割、加密pdf文件的代碼詳解
- Python使用pdfplumber庫高效解析PDF文件
- Python利用pdfplumber庫提取pdf中表格數(shù)據(jù)
- python用pdfplumber提取pdf表格數(shù)據(jù)并保存到excel文件中
- Python利用pdfplumber實現(xiàn)讀取PDF寫入Excel
- python使用PyPDF2 和 pdfplumber操作PDF文件
相關(guān)文章
從基礎(chǔ)到進階詳解Pandas時間數(shù)據(jù)處理指南
Pandas構(gòu)建了完整的時間數(shù)據(jù)處理生態(tài),核心由四個基礎(chǔ)類構(gòu)成,Timestamp,DatetimeIndex,Period和Timedelta,下面我們就來深入介紹Pandas時間數(shù)據(jù)處理方法吧2025-06-06
基于Python在MacOS上安裝robotframework-ride
今天小編就為大家分享一篇關(guān)于基于Python在MacOS上安裝robotframework-ride,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-12-12
詳解Django項目中模板標(biāo)簽及模板的繼承與引用(網(wǎng)站中快速布置廣告)
這篇文章主要介紹了詳解Django項目中模板標(biāo)簽及模板的繼承與引用【網(wǎng)站中快速布置廣告】,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-03-03
基于Opencv制作的美顏相機帶你領(lǐng)略美顏特效的效果
最關(guān)于美顏類相機最重要的是第一步:人臉檢測,本篇文章中是采用openCV開源庫實現(xiàn),文中給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值2021-09-09
Python實現(xiàn)PowerPoint演示文稿到圖片的批量轉(zhuǎn)換
PowerPoint演示文稿作為展示創(chuàng)意、分享知識和表達觀點的重要工具,被廣泛應(yīng)用于教育、商務(wù)匯報及個人項目展示等領(lǐng)域,用Python代碼可以高效地實現(xiàn)PowerPoint演示文稿到圖片的批量轉(zhuǎn)換,從而提升工作效率,文本將介紹如何使用Python實現(xiàn)PowerPoint演示文稿到圖片的轉(zhuǎn)換2024-06-06
python爬蟲之你好,李煥英電影票房數(shù)據(jù)分析
這篇文章主要介紹了python爬蟲之你好,李煥英電影票房數(shù)據(jù)分析,文中有非常詳細的代碼示例,對正在學(xué)習(xí)python爬蟲的小伙伴們有一定的幫助,需要的朋友可以參考下2021-04-04

