广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python - 读取pdf、word、excel、ppt、csv、txt文件提取所有文本
  • 414
分享到

Python - 读取pdf、word、excel、ppt、csv、txt文件提取所有文本

pythonpdfwordexcelpptcsv 2023-08-31 13:08:45 414人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

前言 本文对使用python读取pdf、Word、excel、ppt、csv、txt等常用文件,并提取所有文本的方法进行分享和使用总结。 可以读取不同文件的库和方法当然不止下面分享的这些,本文的代码主

前言

本文对使用python读取pdfWordexcel、ppt、csv、txt等常用文件,并提取所有文本的方法进行分享和使用总结
可以读取不同文件的库和方法当然不止下面分享的这些,本文的代码主要目标都是:方便提取文件中所有文本的实现方式。
这些库的更多使用方法,请到官方文档中查阅。

读取PDF文本:PyPDF2

import PyPDF2def read_pdf_to_text(file_path):    with open(file_path, 'rb') as pdf_file:        pdf_reader = PyPDF2.PdfReader(pdf_file)            contents_list = []        for page in pdf_reader.pages:            content = page.extract_text()            contents_list.append(content)        return '\n'.join(contents_list)read_pdf_to_text('xxx.pdf')

读取Word文本:docx2txt

doc需先手动转换成docx

import docx2txtdef read_docx_to_text(file_path):    text = docx2txt.process(file_path)    return textread_docx_to_text('xxx.docx')

读取excel文本:pandas

当然,pandas能读取的文件不仅仅是excel,还包括csv、JSON等。

import pandas as pddef read_excel_to_text(file_path):    excel_file = pd.ExcelFile(file_path)    sheet_names = excel_file.sheet_names    text_list = []    for sheet_name in sheet_names:        df = excel_file.parse(sheet_name)        text = df.to_string(index=False)        text_list.append(text)    return '\n'.join(text_list)read_excel_to_text('xxx.xlsx')

读取ppt文本:pptx

from pptx import Presentationdef read_pptx_to_text(file_path):    prs = Presentation(file_path)        text_list = []    for slide in prs.slides:        for shape in slide.shapes:            if shape.has_text_frame:                text_frame = shape.text_frame                text = text_frame.text                if text:                    text_list.append(text)    return '\n'.join(text_list)read_pptx_to_text('xxx.pptx')

读取csv、txt其他文本:直接open,read()

def read_txt_to_text(file_path):    with open(file_path, 'r') as f:        text = f.read()    return textread_txt_to_text('xxx.csv')read_txt_to_text('xxx.txt')

读取任何文件格式

有了前面的所有函数,那我们可以写一个支持传任意格式文件的函数。

support = {    'pdf': 'read_pdf_to_text',    'docx': 'read_docx_to_text',    'xlsx': 'read_excel_to_text',    'pptx': 'read_pptx_to_text',    'csv': 'read_txt_to_text',    'txt': 'read_txt_to_text',}def read_any_file_to_text(file_path):    file_suffix = file_path.split('.')[-1]    func = support.get(file_suffix)    if func is None:        return '暂不支持该文件格式'    text = eval(func)(file_path)    return textread_any_file_to_text('xxx.pdf')read_any_file_to_text('xxx.docx')read_any_file_to_text('xxx.xlsx')read_any_file_to_text('xxx.pptx')read_any_file_to_text('xxx.csv')read_any_file_to_text('xxx.txt')

结语

以上就是全部常见的文件格式的读取和提取所有文本的全部内容了。
更多其他的使用方法请查阅官方文档。

来源地址:https://blog.csdn.net/DreamingBetter/article/details/132245440

--结束END--

本文标题: Python - 读取pdf、word、excel、ppt、csv、txt文件提取所有文本

本文链接: https://www.lsjlt.com/news/385784.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作