免费成品网站模板,门户网站cms系统,自己做盗版小说网站吗,2021热门网络营销案例前言
本文对使用python读取pdf、word、excel、ppt、csv、txt等常用文件#xff0c;并提取所有文本的方法进行分享和使用总结。 可以读取不同文件的库和方法当然不止下面分享的这些#xff0c;本文的代码主要目标都是#xff1a;方便提取文件中所有文本的实现方式。 这些库的…前言
本文对使用python读取pdf、word、excel、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_namestext_list []for sheet_name in sheet_names:df excel_file.parse(sheet_name)text df.to_string(indexFalse)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_frametext text_frame.textif text:text_list.append(text)return \n.join(text_list)read_pptx_to_text(xxx.pptx)读取csv、txt其他文本直接openread()
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)结语
以上就是全部常见的文件格式的读取和提取所有文本的全部内容了。 更多其他的使用方法请查阅官方文档。