因为工做缘由,常常须要将多个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
你们一块儿来学习讨论吧!工具