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

如何编写Python脚本禁用PDF网页超链接?PyPDF2尝试失败求助

Python脚本禁用PDF中的网页超链接

PyPDF2仅能处理注释型超链接,但很多PDF里的网页链接是嵌入在文本或页面内容中的动作(Action),这就是你用它没效果的原因。推荐用PyMuPDF(fitz)来处理,它能识别并移除各类超链接。

步骤实现

  1. 先安装依赖:
pip install pymupdf
  1. 编写脚本:
import fitz

def disable_pdf_links(input_path, output_path):
    # 打开PDF文件
    doc = fitz.open(input_path)
    
    # 遍历每一页
    for page in doc:
        # 获取当前页面所有链接
        links = page.get_links()
        # 逐个移除链接
        for link in links:
            # 只移除网页链接(URI类型),如果要移除所有链接可以去掉判断
            if link["kind"] == fitz.LINK_URI:
                page.delete_link(link)
    
    # 保存处理后的PDF
    doc.save(output_path)
    doc.close()

# 使用示例
disable_pdf_links("input.pdf", "output_no_links.pdf")

说明

  • page.get_links()会获取页面上所有类型的链接,包括URI、内部跳转等;
  • 通过link["kind"] == fitz.LINK_URI可以精准筛选网页链接,若要移除所有链接,直接删除这个判断即可;
  • 如果原PDF是加密的,需要先调用doc.authenticate("密码")解密后再处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 13:57:02