Python简单拆分PDF文件,将一个PDF文件拆分成指定份数
2018-07-20 来源:open-open
[Python]代码
from pyPdf import PdfFileWriter, PdfFileReader import os import time import sys def part_pdf(input_file, output_file, config_count, f_w, now, file_name): file1 = file(input_file, 'rb') pdf = PdfFileReader(file1) pdf_pages_len = len(pdf.pages) if config_count <= pdf_pages_len: ye = pdf_pages_len / config_count lst_ye = pdf_pages_len % config_count part_count = 0 part_count_ye = 0 for fen in range(config_count): part_count += 1 if part_count == config_count: part_ye = ye + lst_ye else: part_ye = ye write_pdf(pdf, part_count_ye, part_count_ye+part_ye, fen, output_file) part_count_ye += ye else: f_w.writelines('time: '+now+' file name: '+file_name+' status: part_num > pdf pages [error]\n') sys.exit(1) def write_pdf(pdf, part_count_ye, part_count_ye_end, fen, output_file): out = PdfFileWriter() for pp in range(part_count_ye, part_count_ye_end): out.addPage(pdf.getPage(pp)) ous = file(output_file+'_'+str(fen+1)+'.pdf', 'wb') out.write(ous) ous.close() def pdf_main(): f = open('configure.txt', 'r') f_w = open('pp_log.txt', 'a') now = time.strftime('%Y-%m-%d %H:%M:%S') for i in f: i_ = i.strip() aa = i_.split('=')[1] if i_.find('part_num=') != -1 and aa.isdigit(): config_count = int(aa) else: f_w.writelines('time: '+now+' status: part_num in configure.txt is error [error]\n') sys.exit(1) files = os.listdir('input_dir/') for each in files: input_file = 'input_dir/'+each file_name = input_file[input_file.index('/'):input_file.index('.')] output_file = 'output_dir/'+file_name part_pdf(input_file, output_file, config_count, f_w, now, file_name) f_w.writelines('time: '+now+' file name: '+file_name+' status: success\n') pdf_main()
标签: 代码
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
下一篇:Python批量抓取图片
最新资讯
热门推荐