因爲工做緣由,常常須要將多個pdf文件合併後打印,有時候上網找免費合併工具比較麻煩(公司內網不能訪問公網),因而決定搞個小工具。python
須要安裝 PyPDF2bash
pip install PyPDF2
代碼網絡
# -*- coding=utf-8 -*- """ 功能: 將當前目錄下的全部pdf文件合併爲一個文件,新文件命名爲 all_merge_年月日_時分秒.pdf 被合併的pdf文件不包含 all_merge 開頭的文件 """ import PyPDF2 import pathlib import datetime def do_merge(the_dir): prefix = 'all_merge' output_file = '%s_%s.pdf' % (prefix, datetime.datetime.now().strftime('%Y%m%d_%H%M%S')) pdf_files = [] path_dir = pathlib.Path(the_dir) for filename in path_dir.iterdir(): if not filename.is_file(): continue if filename.name[0:len(prefix)] == prefix: continue elif filename.name.endswith('.pdf'): pdf_files.append(filename.name) pdf_files.sort(key=str.lower) pdf_writer = PyPDF2.PdfFileWriter() print("find %d pdf file(s)." % len(pdf_files)) idx = 0 for f in pdf_files: idx += 1 print("%d: %s" % (idx, f)) pdf_obj = open(f, 'rb') pdf_reader = PyPDF2.PdfFileReader(pdf_obj) for page_num in range(0, pdf_reader.numPages): page_obj = pdf_reader.getPage(page_num) pdf_writer.addPage(page_obj) pdf_output = open(output_file, 'wb') pdf_writer.write(pdf_output) pdf_output.close() print("merge file:[ %s ]" % output_file) input("Press any key to exit.") if __name__ == "__main__": do_merge(".")
本文的文字及圖片來源於網絡,僅供學習、交流使用,不具備任何商業用途,若有問題請及時聯繫咱們以做處理app
想要獲取更多Python學習資料能夠加
QQ:2955637827私聊
或加Q羣630390733
你們一塊兒來學習討論吧!工具