使用PyMuPDF(fitz)提取PDF文件文本内容

安装PyMuPDF库(如果还没有安装的话):

pip install pymupdf

使用以下Python脚本来提取指定页面的文本:

import fitz  # 导入PyMuPDF库

def extract_text_from_specific_page(file_path, page_number):
    # 打开PDF文件
    doc = fitz.open(file_path)
    
    # 检查页面号是否有效
    if page_number < 1 or page_number > len(doc):
        return "页面号超出文档范围"
    
    # 提取指定页面的文本(页面索引从0开始,因此减1)
    page = doc[page_number - 1]
    text = page.get_text()
    
    # 关闭文档
    doc.close()
    
    return text

# 设置文件路径和要提取的页面号
pdf_path = './example.pdf'  # PDF文件路径
page_number = 3  # 假设我们要提取第3页的内容(从1开始)

# 调用函数并打印结果
extracted_text = extract_text_from_specific_page(pdf_path, page_number)
print(extracted_text)

使用以下Python脚本来提取PDF文件所有页面文本,并存储在txt文件中:

import fitz  # 导入PyMuPDF库

def extract_text_from_pdf(file_path, output_path):
    """
    从指定的PDF文件中提取所有页面的文本,并将其存储在TXT文件中。

    参数:
    file_path: str, PDF文件的路径。
    output_path: str, 输出的TXT文件的路径。
    """
    # 打开PDF文件
    doc = fitz.open(file_path)
    
    # 初始化一个空字符串来收集文本
    full_text = ""
    
    # 遍历每一页
    for page in doc:
        # 提取当前页面的文本并追加到full_text字符串
        full_text += page.get_text()
    
    # 关闭文档
    doc.close()
    
    # 将所有文本写入TXT文件
    with open(output_path, "w", encoding="utf-8") as file:
        file.write(full_text)

    return f"文本已保存到 {output_path}"

# 设置文件路径和输出路径
pdf_path = 'example.pdf'  # PDF文件路径
txt_path = 'output.txt'  # 输出TXT文件的路径

# 调用函数并打印结果
result = extract_text_from_pdf(pdf_path, txt_path)
print(result)

相关推荐

  1. 使用PyMuPDF(fitz)提取PDF文件文本内容

    2024-05-09 22:28:03       37 阅读
  2. 使用 Python 从 PDF 文件提取、转换图像

    2024-05-09 22:28:03       39 阅读
  3. 使用Python提取PDF中的文本和表格数据

    2024-05-09 22:28:03       44 阅读
  4. Python实战:文本内容提取

    2024-05-09 22:28:03       36 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-09 22:28:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-09 22:28:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-09 22:28:03       82 阅读
  4. Python语言-面向对象

    2024-05-09 22:28:03       91 阅读

热门阅读

  1. CTF-catcat-new

    2024-05-09 22:28:03       35 阅读
  2. Kubernetes之Headless Services

    2024-05-09 22:28:03       28 阅读
  3. 每日一练 | 华为认证真题练习Day228

    2024-05-09 22:28:03       33 阅读
  4. 在PyCharm中自动添加文件头注释

    2024-05-09 22:28:03       28 阅读
  5. 嵌入式学习——51单片机——day16

    2024-05-09 22:28:03       29 阅读
  6. 【QT教程】QT6硬件数据库编程 QT硬件数据库

    2024-05-09 22:28:03       25 阅读
  7. 子集II(力扣90)

    2024-05-09 22:28:03       30 阅读
  8. [力扣题解]131. 分割回文串

    2024-05-09 22:28:03       32 阅读
  9. 【收录 Hello 算法】3.2 基本数据类型

    2024-05-09 22:28:03       33 阅读