最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實現(xiàn)快速提取Word表格并寫入Excel

 更新時間:2024年12月19日 11:43:55   作者:Sitin濤哥  
在日常辦公中,常常會遇到需要從Word文檔中提取表格內(nèi)容,并將其寫入Excel表格的需求,下面我們就來看看如何使用Python實現(xiàn)快速提取Word表格并寫入Excel吧

在日常辦公中,常常會遇到需要從Word文檔中提取表格內(nèi)容,并將其寫入Excel表格的需求。通過使用Python編程語言,我們可以高效地完成這一任務(wù)。本文將詳細(xì)介紹如何使用Python提取Word文檔表格內(nèi)容并寫入Excel,提供完整的代碼示例。

一、環(huán)境準(zhǔn)備

在開始編寫代碼之前,我們需要安裝一些Python庫來處理Word和Excel文檔。主要使用到的庫有python-docx和openpyxl。

1. 安裝python-docx庫

python-docx庫用于讀取和操作Word文檔。使用以下命令安裝:

pip install python-docx

2. 安裝openpyxl庫

openpyxl庫用于讀取和寫入Excel文件。使用以下命令安裝:

pip install openpyxl

二、讀取Word文檔中的表格

首先,需要編寫代碼來讀取Word文檔中的表格內(nèi)容。以下是一個示例代碼,用于從Word文檔中提取所有表格內(nèi)容并打印出來。

示例代碼:

from docx import Document

def read_word_tables(file_path):
    doc = Document(file_path)
    tables = doc.tables
    data = []
    for table in tables:
        table_data = []
        for row in table.rows:
            row_data = []
            for cell in row.cells:
                row_data.append(cell.text)
            table_data.append(row_data)
        data.append(table_data)
    return data

???????# 示例用法
word_file = 'example.docx'
tables = read_word_tables(word_file)
for i, table in enumerate(tables):
    print(f"Table {i+1}:")
    for row in table:
        print("\t".join(row))

在這個示例中,read_word_tables函數(shù)接受一個Word文件的路徑,返回一個包含所有表格內(nèi)容的列表。每個表格內(nèi)容以二維列表的形式存儲,其中每個子列表代表一行,每個子列表中的元素代表一個單元格的內(nèi)容。

三、將表格內(nèi)容寫入Excel

將提取的表格內(nèi)容寫入Excel文件。以下是一個示例代碼,用于將表格內(nèi)容寫入Excel文件。

示例代碼:

from openpyxl import Workbook

def write_to_excel(file_path, tables):
    wb = Workbook()
    ws = wb.active

    for table in tables:
        for row in table:
            ws.append(row)
        ws.append([])  # 添加一個空行,分隔不同的表格

    wb.save(file_path)

# 示例用法
excel_file = 'output.xlsx'
write_to_excel(excel_file, tables)

在這個示例中,write_to_excel函數(shù)接受一個Excel文件的路徑和表格內(nèi)容列表,將表格內(nèi)容寫入Excel文件。使用openpyxl庫的Workbook對象創(chuàng)建一個新的工作簿,并通過ws.append方法將每行數(shù)據(jù)添加到工作表中。

四、完整示例:從Word提取表格并寫入Excel

將上述步驟結(jié)合起來,編寫一個完整的示例代碼,從Word文檔中提取表格內(nèi)容并寫入Excel文件。

示例代碼:

from docx import Document
from openpyxl import Workbook

def read_word_tables(file_path):
    doc = Document(file_path)
    tables = doc.tables
    data = []
    for table in tables:
        table_data = []
        for row in table.rows:
            row_data = []
            for cell in row.cells:
                row_data.append(cell.text)
            table_data.append(row_data)
        data.append(table_data)
    return data

def write_to_excel(file_path, tables):
    wb = Workbook()
    ws = wb.active

    for table in tables:
        for row in table:
            ws.append(row)
        ws.append([])  # 添加一個空行,分隔不同的表格

    wb.save(file_path)

# 示例用法
word_file = 'example.docx'
excel_file = 'output.xlsx'
tables = read_word_tables(word_file)
write_to_excel(excel_file, tables)

print(f"已成功將Word文檔中的表格內(nèi)容提取并寫入Excel文件:{excel_file}")

實際應(yīng)用中的考慮事項

在實際應(yīng)用中,處理Word文檔和Excel文件時可能會遇到一些特殊情況和問題。

1. 處理復(fù)雜表格

Word文檔中的表格可能具有復(fù)雜的結(jié)構(gòu),例如合并單元格、嵌套表格等。處理這些復(fù)雜表格時,需要額外的代碼邏輯來處理這些特殊情況。

2. 表格數(shù)據(jù)清洗

從Word文檔提取的表格數(shù)據(jù)可能包含一些多余的空格或換行符。在寫入Excel之前,可以對數(shù)據(jù)進(jìn)行清洗,以確保數(shù)據(jù)的整潔和一致性。

3. 大文件處理

對于包含大量表格的大型Word文檔或需要寫入大量數(shù)據(jù)的Excel文件,可能需要考慮內(nèi)存和性能問題??梢圆捎梅峙x取和寫入的方式來處理大文件。

示例代碼:

import re
from docx import Document
from openpyxl import Workbook

def clean_text(text):
    # 去除多余的空格和換行符
    return re.sub(r'\s+', ' ', text).strip()

def read_word_tables(file_path):
    doc = Document(file_path)
    tables = doc.tables
    data = []
    for table in tables:
        table_data = []
        for row in table.rows:
            row_data = []
            for cell in row.cells:
                row_data.append(clean_text(cell.text))
            table_data.append(row_data)
        data.append(table_data)
    return data

def write_to_excel(file_path, tables):
    wb = Workbook()
    ws = wb.active

    for table in tables:
        for row in table:
            ws.append(row)
        ws.append([])  # 添加一個空行,分隔不同的表格

    wb.save(file_path)

# 示例用法
word_file = 'example.docx'
excel_file = 'output.xlsx'
tables = read_word_tables(word_file)
write_to_excel(excel_file, tables)

print(f"已成功將Word文檔中的表格內(nèi)容提取并寫入Excel文件:{excel_file}")

總結(jié)

本文詳細(xì)介紹了如何使用Python從Word文檔中提取表格內(nèi)容并寫入Excel文件。通過使用python-docx庫讀取Word文檔,openpyxl庫寫入Excel文件,我們可以高效地完成這一任務(wù)。此外,本文還介紹了實際應(yīng)用中的一些考慮事項和解決方案。

以上就是Python實現(xiàn)快速提取Word表格并寫入Excel的詳細(xì)內(nèi)容,更多關(guān)于Python快速提取Word的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python異步發(fā)送日志到遠(yuǎn)程服務(wù)器詳情

    Python異步發(fā)送日志到遠(yuǎn)程服務(wù)器詳情

    這篇文章主要介紹了Python異步發(fā)送日志到遠(yuǎn)程服務(wù)器詳情,文章通過簡單輸出到cmd和文件中的代碼展開詳情,需要的朋友可以參考一下
    2022-07-07
  • Python三行代碼實現(xiàn)將Markdown轉(zhuǎn)換為Word/PDF

    Python三行代碼實現(xiàn)將Markdown轉(zhuǎn)換為Word/PDF

    Markdown 作為一種標(biāo)記性文本,具有易編輯、輕量化和高兼容性等特點,被廣泛應(yīng)用于技術(shù)文檔,本文將使用Python實現(xiàn)將Markdown 轉(zhuǎn)換為 Word 和 PDF,感興趣的小伙伴可以了解下
    2025-11-11
  • pytorch下tensorboard的使用程序示例

    pytorch下tensorboard的使用程序示例

    我們都知道tensorflow框架可以使用tensorboard這一高級的可視化的工具,這篇文章主要介紹了pytorch下tensorboard的使用,需要的朋友可以參考下
    2021-10-10
  • 詳解Python 4.0 預(yù)計推出的新功能

    詳解Python 4.0 預(yù)計推出的新功能

    這篇文章主要介紹了詳解Python 4.0 預(yù)計推出的新功能,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-07-07
  • Python寫安全小工具之TCP全連接端口掃描器

    Python寫安全小工具之TCP全連接端口掃描器

    這篇文章主要介紹了Python寫安全小工具之TCP全連接端口掃描器,文章通過TCP connect來實現(xiàn)一個TCP全連接端口掃描器。具有一定的參考價值,需要的小伙伴可以參考一下
    2022-05-05
  • Django中使用ModelForm生成HTML標(biāo)簽的方法步驟

    Django中使用ModelForm生成HTML標(biāo)簽的方法步驟

    在 Django 中,使用 ModelForm 來生成 HTML 表單標(biāo)簽是一種常見且高效的做法,本文主要介紹了Django中使用ModelForm生成HTML標(biāo)簽的方法步驟,感興趣的可以了解一下
    2024-01-01
  • Django xadmin安裝及使用詳解

    Django xadmin安裝及使用詳解

    這篇文章主要介紹了Django xadmin安裝及使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • pandas創(chuàng)建DataFrame對象失敗的解決方法

    pandas創(chuàng)建DataFrame對象失敗的解決方法

    本文主要介紹了pandas創(chuàng)建DataFrame對象失敗的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • python中的selenium入門超詳細(xì)教程

    python中的selenium入門超詳細(xì)教程

    這篇文章主要介紹了python中的selenium入門超詳細(xì)教程,本文是在python環(huán)境下使用selenium,使用瀏覽器是Chrome,系統(tǒng)是win10系統(tǒng),需要的朋友可以參考下
    2023-11-11
  • 用pandas中的DataFrame時選取行或列的方法

    用pandas中的DataFrame時選取行或列的方法

    今天小編就為大家分享一篇用pandas中的DataFrame時選取行或列的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07

最新評論

阿勒泰市| 阳朔县| 金秀| 沙田区| 普宁市| 屏南县| 乃东县| 芜湖市| 乐都县| 新沂市| 福贡县| 栾城县| 平阳县| 临沂市| 固安县| 阿拉善左旗| 天台县| 平邑县| 宁陵县| 永兴县| 璧山县| 贵港市| 西充县| 城固县| 弥渡县| 新巴尔虎右旗| 木里| 屏边| 米脂县| 城固县| 武汉市| 惠州市| 平江县| 开化县| 如皋市| 沧州市| 会理县| 津市市| 东港市| 永仁县| 乐清市|