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

如何使用Python替换PDF文件中的指定文本

Python实现PDF文档文本替换功能

基于PyPDF2可以实现简单PDF的文本替换,核心逻辑是直接读取页面内容流做字节级替换后重新生成PDF,适合无加密、文本存储连续的常规PDF文件。

首先安装依赖库:

pip install PyPDF2

可直接运行的参考实现代码如下:

from PyPDF2 import PdfFileReader, PdfFileWriter

# 在这里配置替换规则,支持多组替换
replacements = [
    ("old string", "new string")
]

# 读取本地原PDF文件,路径替换为你自己的文件路径
pdf = PdfFileReader(open(r'C:\Users\DELL-PC\Desktop\text augmentation.pdf', "rb"))
writer = PdfFileWriter() 

for page in pdf.pages:
    contents = page.getContents().getData()
    # 逐组执行字节级替换
    for (old_text, new_text) in replacements:
        contents = contents.replace(old_text.encode('utf-8'), new_text.encode('utf-8'))
    page.getContents().setData(contents)
    writer.addPage(page)
    
# 输出修改后的PDF
with open("modified.pdf", "wb") as f:
     writer.write(f)

使用时需要修改的配置项:

  • 在replacements列表中添加你需要的文本替换对,格式为("原文本", "替换后的文本")
  • 将PdfFileReader传入的文件路径改为你本地待处理PDF的实际存储路径
  • 可修改输出文件的文件名,默认生成在代码运行的同目录下

注意:该方案仅适用于简单格式的PDF。如果待处理PDF存在字体子集化、文本被排版引擎拆分为多个碎块存储、是扫描件转成的图片PDF,上述字节替换的方法会失效。这类复杂场景建议换用PyMuPDF库,通过匹配文本坐标、覆盖原区域重绘文本的方式实现替换,兼容性更好。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 19:18:43