python提取pdf文件文字(OCR)

目录

前言

一、引用的库

二、提取文字

三、保存文字

四、运行

总结


前言

本文主要讲述如何利用python提取pdf文件中的文字,分为引用的库,提取文字,保存文字,运行,总结这几部分。本文为分总结构,文末有总结,相关解释可以参考前文分部分。感谢你点开此文,祝顺利。

一、引用的库

import pdfplumber

 确保已安装以上的库,不然运行会报错

#安装库可以用清华的镜像网站(可能会更新,可以上官网查询地址)

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

二、提取文字

def pdf_to_text(pdf_path):
    """
    从 PDF 文件中提取文本内容。

    Args:
        pdf_path (str): PDF 文件的路径。

    Returns:
        str: 提取的文本内容。
    """
    text = ''
    # 打开PDF文件
    with pdfplumber.open(pdf_path) as pdf:
        # 遍历每一页
        for page in pdf.pages:
            # 提取文本,并添加到text变量中
            text += page.extract_text()

    # 移除文本中的换行符(根据需求设置)
    text = text.replace('\n', '')

    return text

其中'yourfile'替换成你的文件的地址。

三、保存文字

def savewords():
    """
    将 PDF 文件中提取的文本保存到文本文件中。
    """
    # 输入PDF文件路径
    pdf_path = 'yourfile'
    # 调用pdf_to_text函数进行文字提取
    extracted_text = pdf_to_text(pdf_path)

    # 将提取的文字写入到txt文件中
    with open('extracted_text.txt', 'w', encoding='utf-8') as file:
        file.write(extracted_text)
    print("Text extracted successfully!")

注意,保存文字和提取文字是不可分割的两个“方法”,在写代码时要一起复制粘贴。此处分开是为了容易理解

四、运行

if __name__ == "__main__":
    savewords()

总结

import pdfplumber
def pdf_to_text(pdf_path):
    """
    从 PDF 文件中提取文本内容。

    Args:
        pdf_path (str): PDF 文件的路径。

    Returns:
        str: 提取的文本内容。
    """
    text = ''
    # 打开PDF文件
    with pdfplumber.open(pdf_path) as pdf:
        # 遍历每一页
        for page in pdf.pages:
            # 提取文本,并添加到text变量中
            text += page.extract_text()

    # 移除文本中的换行符(根据需求设置)
    text = text.replace('\n', '')

    return text

def savewords():
    """
    将 PDF 文件中提取的文本保存到文本文件中。
    """
    # 输入PDF文件路径
    pdf_path = 'yourfile'
    # 调用pdf_to_text函数进行文字提取
    extracted_text = pdf_to_text(pdf_path)

    # 将提取的文字写入到txt文件中
    with open('extracted_text.txt', 'w', encoding='utf-8') as file:
        file.write(extracted_text)
    print("Text extracted successfully!")

if __name__ == "__main__":
    savewords()

你可能感兴趣的:(python,pdf,ocr,python)