1朴则、安裝需要的包
pip install PyPDF2 (使用國內(nèi)的安裝源)
pip install PyPDF2 -i https://pypi.tuna.tsinghua.edu.cn/simple
2废亭、代碼
方法一:
import os
from PyPDF2 import PdfFileMerger
target_path = r'pdf'
pdf_lst = [f for f in os.listdir(target_path) if f.endswith('.pdf')]
pdf_lst = [os.path.join(target_path, filename) for filename in pdf_lst]
file_merger = PdfFileMerger()
for pdf in pdf_lst:
file_merger.append(pdf,import_bookmarks=False) # 合并pdf文件
file_merger.write(r"merge.pdf")
或者方法二:
import os
from PyPDF2 import PdfReader,PdfWriter,PdfMerger
def unite_pdf():
merger = PdfMerger()
for pdf in ["C://Users//xxx//Desktop//pdf//00.pdf","C://Users//xxx//Desktop//pdf//01.pdf","C://Users//xxx//Desktop//pdf//02.pdf","C://Users//xxx//Desktop//pdf//03.pdf","C://Users//xxx//Desktop//pdf//04.pdf"]:
merger.append(pdf)
merger.write("合并后的pdf.pdf")
merger.close()
if __name__ =="__main__":
unite_pdf()
文件結(jié)構(gòu)
4彼棍、遇到的問題
1超燃、報(bào)錯(cuò):PdfReadError: Unexpected destination ‘/__WKANCHOR_2‘
解決辦法:加上參數(shù)import_bookmarks=False
file_merger.append(pdf,import_bookmarks=False)
2、注意一下:
合并的時(shí)候辩蛋,pdf_lst 是根據(jù)文件的名稱來排序生成凑术,如果對于pdf文件合成順序有要求,建議把文件按照期望的合成順序編號1 2 3這樣防嗡,方便一些