python 拆分pdf(有可执行文件exe)

1.背景 

       被那些软件pdf拆分整气死了,今天用python写一份pdf拆分的代码。

2.代码:(计算机的可以去学习一下,自己改改)

  pdf_split.py

from PyPDF2 import PdfFileReader, PdfFileWriter

# PDF文件分割
def split_pdf():
    try:
        read_file = input("请输入要拆分的PDF名字(例如test.pdf):")
        fp_read_file = open(read_file, 'rb')
        pdf_input = PdfFileReader(fp_read_file)  # 将要分割的PDF内容格式话
        page_count = pdf_input.getNumPages()  # 获取PDF页数
        print("该文件共有{}页".format(page_count))  # 打印页数

        Customize=input("是否自定义拆封规则(Yes or No):")
        if Customize=="No":
             size=input("请输入一个文件中保存的页数(分为等份):")
             out_detail=input("请输入拆封规则文件(eg 1.txt):")
             n=page_count//int(size)
             with open(out_detail,"w") as fp:
                for i in range(n):
                    start=i*int(size)+1
                    end=int(start)+int(size)-1
                    if end>page_count:
                        end=page_count
                    temp=str(start)+str('-')+str(end)
                    tp=str(temp)+" split_"+str(start)+'_'+str(end)+'\n'
                    fp.write(tp)
        else:
            out_detail=input("请配置好拆分规则文件,并输入文件(eg. 1.txt):")
        
       

        with open(out_detail, 'r',True,'utf-8')as fp:
           
            txt = fp.readlines()
            for detail in txt:  # 打开分割标准文件
             
                pages, write_file = detail.split()  # 空格分组
                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的页数')
      
    except Exception as e:
        print(e)


if __name__ == '__main__':
    split_pdf()



3.可执行文件(.exe) 非计算机的可以用这个

链接:https://pan.baidu.com/s/1Zye2nHwPv2599JlszD_NKg 
提取码:123l

4.使用

      (1)把exe(py)文件放到想要拆分pdf的目录下

      (2)执行exe(py)  首先输入想要拆分pdf的名字

      (3   下面有是否选择自定义拆分目录,

                    默认规则为输入 :No -> 输入一个文件中保存的页数 :size,会均分为size大小的pdf 

                    如果输入Yes 那需在该目录下编写一个txt文件,包括命名规则

 eg.

 

一行中,前面表示拆分文件起始页到末页中原pdf的页码,后面表示生成的拆分pdf文件(文件名不要有空格,可能会出错)

可支持修改,在选择规则是选择Yes即可

下面要输入拆分规则文件(.txt) 即可生成拆分pdf的文件,运行截图如下:

外传:python生成可执行文件

          要执行python文件,首先确定确定环境是否有PyPDF2

         安装命令:

         pip install PyPDF2

        下面安装python可执行文件包

pip install pyinstaller    

        初始化py文件  执行下面命令,会生成一个pdf_split.spec文件

 pyinstaller -F pdf_split.py

        生成exe文件,再输入

pyinstaller pdf_split.spec

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将Python 3.6脚本转换为EXE可执行文件,您可以使用PyInstaller。 以下是一些步骤: 1.安装PyInstaller 使用pip命令安装PyInstaller,您可以在控制台中运行以下命令: ``` pip install pyinstaller ``` 2.创建spec文件 在控制台中导航到您的Python脚本所在的目录,并使用以下命令创建.spec文件: ``` pyinstaller --name=MyProgram myscript.py ``` 这将创建一个名为"myscript.spec"的文件。 3.编辑spec文件 使用文本编辑器打开.spec文件并进行编辑。在其中,您可以指定要包含在EXE文件中的文件和文件夹。例如: ``` # -*- mode: python -*- block_cipher = None a = Analysis(['myscript.py'], pathex=['C:\\Users\\User\\Desktop\\myproject'], binaries=[], datas=[('datafile.txt', '.')], hiddenimports=[], hookspath=[], runtime_hooks=[], excludes=[], win_no_prefer_redirects=False, win_private_assemblies=False, cipher=block_cipher, noarchive=False) pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) exe = EXE(pyz, a.scripts, a.binaries, a.zipfiles, a.datas, [], name='MyProgram', debug=False, bootloader_ignore_signals=False, strip=False, upx=True, upx_exclude=[], upx_include=[], runtime_tmpdir=None, console=True ) ``` 在 "datas" 中,您可以指定要包含在EXE文件中的其他文件和文件夹。在这个例子中,我们将包括"datafile.txt"。 4.构建EXE文件 使用以下命令构建EXE文件: ``` pyinstaller myscript.spec ``` 这将在"dist"文件夹中创建一个名为"MyProgram.exe"的可执行文件。 5.测试EXE文件 现在,您可以测试EXE文件是否正常工作。在控制台中导航到"dist"文件夹,并运行以下命令: ``` MyProgram.exe ``` 如果一切顺利,您的Python 3.6脚本现在应该已经转换为可执行文件

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值