You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pypdf提取PDF页面生成无内容PDF的问题求助

问题原因与解决方法

核心错误:错误地将方法赋值而非调用

你的代码存在关键语法错误:output.add_page = page 这行是把page对象直接赋值给了PdfWriter的add_page方法属性,而非调用添加页面的方法。这导致PdfWriter实例中没有任何页面内容,最终生成的PDF只有基础头部结构,大小仅311字节。

修正后的代码

将赋值语句改为调用add_page方法,传入page对象作为参数:

from pypdf import PdfReader, PdfWriter
input_pdf = PdfReader('testpdf.pdf')
page = input_pdf.pages[0]
print(len(page.extract_text()))
output = PdfWriter()
# 修正:调用add_page方法,而非赋值
output.add_page(page)
with open('testpdf_1.pdf', 'wb') as output_stream:
      output.write(output_stream)

关于交互式会话中的输出

你看到的False, <_io.BufferedWriter name='testpdf_1.pdf'>是output.write(output_stream)方法的返回值:

  • 第一个元素False表示写入操作未生成有效内容(因当时未添加任何页面)
  • 第二个元素是输出流对象本身
    这不是报错信息,只是方法返回的状态元组,修正代码后,返回值的第一个元素会变为True。

内容的提问来源于stack exchange,提问作者user3657298

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 21:12:03