欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python讀取pdf、word、excel、ppt、csv和txt文件提取所有文本

 更新時間:2023年08月21日 11:07:21   作者:DreamingBetter  
這篇文章主要給大家介紹了關(guān)于Python讀取pdf、word、excel、ppt、csv和txt文件提取所有文本的相關(guān)資料,文中通過代碼示例將實現(xiàn)的方法介紹的非常詳細(xì),需要的朋友可以參考下

前言

本文對使用python讀取pdf、word、excel、ppt、csv、txt等常用文件,并提取所有文本的方法進(jìn)行分享和使用總結(jié)。

可以讀取不同文件的庫和方法當(dāng)然不止下面分享的這些,本文的代碼主要目標(biāo)都是:方便提取文件中所有文本的實現(xiàn)方式。

這些庫的更多使用方法,請到官方文檔中查閱。

讀取PDF文本:PyPDF2

import PyPDF2
def 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需先手動轉(zhuǎn)換成docx

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

讀取excel文本:pandas

當(dāng)然,pandas能讀取的文件不僅僅是excel,還包括csv、json等。

import pandas as pd
def 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 Presentation
def 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 text
read_txt_to_text('xxx.csv')
read_txt_to_text('xxx.txt')

讀取任何文件格式

有了前面的所有函數(shù),那我們可以寫一個支持傳任意格式文件的函數(shù)。

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 text
read_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')

結(jié)語

以上就是全部常見的文件格式的讀取和提取所有文本的全部內(nèi)容了。

更多其他的使用方法請查閱官方文檔。

到此這篇關(guān)于Python讀取pdf、word、excel、ppt、csv和txt文件提取所有文本的文章就介紹到這了,更多相關(guān)Python讀取文件提取所有文本內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 給大家整理了19個pythonic的編程習(xí)慣(小結(jié))

    給大家整理了19個pythonic的編程習(xí)慣(小結(jié))

    這篇文章主要介紹了給大家整理了19個pythonic的編程習(xí)慣(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • python實現(xiàn)簡易五子棋游戲(控制臺版)

    python實現(xiàn)簡易五子棋游戲(控制臺版)

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)簡易五子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Python項目打包成apk或者其他端的應(yīng)用程序

    Python項目打包成apk或者其他端的應(yīng)用程序

    本文主要介紹了使用Kivy和Buildozer將Python項目打包成Android APK文件的步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11
  • Python+Selenium使用Page Object實現(xiàn)頁面自動化測試

    Python+Selenium使用Page Object實現(xiàn)頁面自動化測試

    這篇文章主要介紹了Python+Selenium使用Page Object實現(xiàn)頁面自動化測試,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Python OpenCV實現(xiàn)基于模板的圖像拼接

    Python OpenCV實現(xiàn)基于模板的圖像拼接

    基于特征點(diǎn)的圖像拼接如果是多張圖,每次計算變換矩陣,都有誤差,最后可以圖像拼完就變形很大,基于模板的方法可以很好的解決這一問題,本文就來和大家具體聊聊
    2022-10-10
  • python實現(xiàn)身份證實名認(rèn)證的方法實例

    python實現(xiàn)身份證實名認(rèn)證的方法實例

    這篇文章主要給大家介紹了關(guān)于python實現(xiàn)身份證實名認(rèn)證的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • python將一個英文語句以單詞為單位逆序排放的方法

    python將一個英文語句以單詞為單位逆序排放的方法

    今天小編就為大家分享一篇python將一個英文語句以單詞為單位逆序排放的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • 使用Python連接MySQL數(shù)據(jù)庫進(jìn)行編程的步驟詳解

    使用Python連接MySQL數(shù)據(jù)庫進(jìn)行編程的步驟詳解

    Python數(shù)據(jù)庫編程可以使用多種模塊與API,例如SQLite、MySQL、PostgreSQL等,本教程將重點(diǎn)介紹使用Python連接MySQL數(shù)據(jù)庫進(jìn)行編程,需要的朋友可以參考下
    2023-06-06
  • python實現(xiàn)超級瑪麗游戲

    python實現(xiàn)超級瑪麗游戲

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)超級瑪麗游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Pandas時間序列:重采樣及頻率轉(zhuǎn)換方式

    Pandas時間序列:重采樣及頻率轉(zhuǎn)換方式

    今天小編就為大家分享一篇Pandas時間序列:重采樣及頻率轉(zhuǎn)換方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12

最新評論