首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用pyPDF2重命名最后一页

使用pyPDF2重命名最后一页
EN

Stack Overflow用户
提问于 2021-06-25 11:44:47
回答 1查看 75关注 0票数 1

我使用的是pyPDF2库,使用以下脚本:

从PyPDF2 import PdfFileReader,PdfFileWriter导入os

def pdf_splitter(路径):fname =os.path.splitext(os.path.basename(路径))

代码语言:javascript
复制
pdf = PdfFileReader(path)
for page in range(pdf.getNumPages()):
    pdf_writer = PdfFileWriter()
    pdf_writer.addPage(pdf.getPage(page))

    output_filename = '{}_page_{}.pdf'.format(
        fname, page+1)

    with open(output_filename, 'wb') as out:
        pdf_writer.write(out)

    print('Created: {}'.format(output_filename))

如果名称为 == 'main':path = 'w9.pdf‘pdf_splitter(路径)

这只是一个例子,它读取原始PDF与多个页面,并分裂为分开的文件。它在已分割的文件上添加页码:

例如。原始PDF名称: w9.pdf拆分为: w9_01_01.pdf,w9_01_02.pdf,w9_01_03.pdf

我需要将最后一个分裂的pdf重命名为w9_01_end.pdf,而不是w9_01_03.pdf,我知道使用getNumPages()可以获得原始pdf的总页面,但不知道如何检测最后一个,并将其命名不同。另外,使用getPage,您也可以获得当前页面。

任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2021-06-25 12:41:49

如果我理解这个问题,您可以添加一个if语句来检查您是否正在创建最后一个页面:

代码语言:javascript
复制
if page != pdf.getNumPages()-1: #for loop works from [0;x[
      output_filename = '{}_page_{}.pdf'.format(
          fname, page+1)
    else:
      output_filename = '{}_page_end.pdf'.format(
          fname)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68130486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档