其實編輯PDF用Adobe就行,它功能超級齊全,可是這玩意要收費...去弄免費破解版,找資源又得半天,所以用python來拆分PDF文件吧,可以批量化處理。
至于為什么不用WPS.....別問,問就是不想開會員。
腳本代碼
先安裝PyMuPDF庫,
pip install PyMuPDF
代碼:?
import fitz # PyMuPDF
def split_pdf(input_pdf, output_folder):
pdf_document = fitz.open(input_pdf)
for page_num in range(pdf_document.page_count):
page = pdf_document[page_num]
# 構(gòu)建輸出文件名,以頁數(shù)命名
output_pdf = f"{output_folder}/Page_{page_num + 1}.pdf"
# 創(chuàng)建一個新的Document對象,包含當前頁面
new_pdf = fitz.open()
new_pdf.insert_pdf(pdf_document, from_page=page_num, to_page=page_num)
# 保存單獨的PDF文件
new_pdf.save(output_pdf)
new_pdf.close()
pdf_document.close()
if __name__ == "__main__":
input_pdf = "157-GGCG[2021]157成套門--武漢******有限公司356996.80.pdf"
output_folder = "C:\\Users\\cx\\Desktop\\pdf"
split_pdf(input_pdf, output_folder)
把輸入路徑和輸出路徑都改一下就行了,整個PDF就會被拆分為一頁一頁的單獨的文件。
如果只需要某一頁的話,按照文件名拿出來就行。
需要某些面的話,按照PyMuPDF的語法改就行。
其他用法:
PyMuPDF(也稱為fitz)是一個強大的Python庫,用于處理PDF文件。除了拆分PDF文件,它還提供了許多其他常用的方法和功能。以下是一些常見的PyMuPDF方法和用法示例:
-
提取文本內(nèi)容:
使用
get_page_text
方法可以提取PDF頁的文本內(nèi)容。以下是一個示例:import fitz def extract_text_from_pdf(pdf_file): pdf_document = fitz.open(pdf_file) text = "" for page_num in range(pdf_document.page_count): page = pdf_document[page_num] text += page.get_text() pdf_document.close() return text pdf_text = extract_text_from_pdf("your_pdf.pdf") print(pdf_text)
-
獲取頁面信息:
您可以使用
get_page_info
方法來獲取PDF頁的信息,如大小和旋轉(zhuǎn)。以下是一個示例:import fitz def get_page_info(pdf_file): pdf_document = fitz.open(pdf_file) for page_num in range(pdf_document.page_count): page = pdf_document[page_num] page_info = page.get_page_info() print(f"Page {page_num + 1}: Size={page_info['size']}, Rotation={page_info['rotate']}") get_page_info("your_pdf.pdf")
-
旋轉(zhuǎn)頁面:
您可以使用
set_rotation
方法來旋轉(zhuǎn)PDF頁面。以下是一個示例:import fitz def rotate_page(pdf_file, page_num, degrees): pdf_document = fitz.open(pdf_file) page = pdf_document[page_num - 1] page.set_rotation(degrees) pdf_document.save("rotated_pdf.pdf") pdf_document.close() rotate_page("your_pdf.pdf", 1, 90) # 將第一頁旋轉(zhuǎn)90度
-
插入頁面:
使用
insert_pdf
方法可以將一個PDF文件的頁面插入到另一個PDF文件中。以下是一個示例:import fitz def insert_page(source_pdf, target_pdf, page_num): source_document = fitz.open(source_pdf) target_document = fitz.open(target_pdf) target_document.insert_pdf(source_document, from_page=page_num - 1, to_page=page_num - 1) target_document.save("merged_pdf.pdf") source_document.close() target_document.close() insert_page("insert.pdf", "target.pdf", 2) # 將insert.pdf的第二頁插入到target.pdf中
這些示例展示了PyMuPDF的一些常見用法。PyMuPDF還提供了許多其他功能,如合并PDF、添加注釋、提取圖像等等。您可以根據(jù)需要查閱PyMuPDF的文檔以了解更多詳細信息和用法。文章來源:http://www.zghlxwxcb.cn/news/detail-731067.html
咱也不裝,這都是chatgpt寫的....但是很對,是有用的。文章來源地址http://www.zghlxwxcb.cn/news/detail-731067.html
到了這里,關(guān)于Python自動化小技巧23——PDF文件拆分為單獨頁面(PyMuPDF)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!