求助|pycharm代码拆分PDF
747
2023.05.08
发布于 未知归属地

求助 想将一个PDF通过pycharm代码拆分成每一页并且命名

这是我一天师兄给我的代码 但是我跑不出来 有没有大佬知道 怎么操作呀

from PyPDF2 import PdfFileReader, PdfFileWriter

# PDF文件分割

def split_pdf(read_file, out_detail):

try:

fp_read_file = open(read_file, 'rb')

pdf_input = PdfFileReader(fp_read_file) # 将要分割的PDF内容格式话

page_count = pdf_input.getNumPages() # 获取PDF页数

print(page_count) # 打印页数

with open(out_detail, 'r',True,'utf-8')as fp:

# print(fp)

txt = fp.readlines()

# print(txt)

for detail in txt: # 打开分割标准文件

# print(type(detail))

pages, write_file = detail.split() # 空格分组

# write_file, write_ext = os.path.splitext(write_file) # 用于返回文件名和扩展名元组

pdf_file = f'{write_file}.pdf'

# liststr=list(map(int, pages.split('-')))

# print(type(liststr))

start_page, end_page = list(map(int, pages.split('-'))) # 将字符串数组转换成整形数组

start_page -= 1

try:

print(f'开始分割{start_page}页-{end_page}页,保存为{pdf_file}......')

pdf_output = PdfFileWriter() # 实例一个 PDF文件编写器

for i in range(start_page, end_page):

pdf_output.addPage(pdf_input.getPage(i))

with open(pdf_file, 'wb') as sub_fp:

pdf_output.write(sub_fp)

print(f'完成分割{start_page}页-{end_page}页,保存为{pdf_file}!')

except IndexError:

print(f'分割页数超过了PDF的页数')

# fp.close()

except Exception as e:

print(e)

finally:

fp_read_file.close()

# def main():

# fire.Fire(split_pdf)

#

# if __name__ == '__main__':

# main()

split_pdf('E:\实验\B5常识下.pdf', 'E:\实验\实验接受.txt')

评论 (6)