python 读取word 表格,写入excel

 

以上word表格汇总为下面的EXCEL表格

用到两个模块,docx,openpyxl

也可以写到csv文件,不过csv文件过长的数字文本会自动转科学计数

excel文件,内容没有转成数字,是默认插入的文本,如果加入判断语句又会有点麻烦,所以可以生成表格后,再手动打开转一下文本为数字。

import docx
import os
from openpyxl import Workbook

path = "D:\\工作\\省厅核查\\"

for file in os.walk(path):
    #新建表格
    workbook = Workbook()
    booksheet = workbook.active
    booksheet.append(['序号',
                      '项目名称',
                      '项目建设规模(公顷)',
                      '验收编号',
                      '项目所在县',
                      '立项批复时间',
                      '验收时间',
                      '新增耕地面积(公顷)',
                      '水田面积(公顷)',
                      '耕地-水田(公顷)',
                      '耕地-旱地或水浇地(公顷)',
                      '水旱轮作(公顷)',
                      '林地',
                      '草地、果园',
                      '畜牧业、养殖业、坑塘',
                      '撂荒',
                      '建设占用',
                      '合法非法临时占用',
                      '灾毁',
                      '光伏',
                      '其它',])
    count = 0
    for filename in file[2]:
        if filename.split('.')[1] == "docx":
            count +=1
            print(str(count)+'、'+filename)
            f = docx.Document(path+filename)
            t = f.tables[0]
            list = []
            list.append(count)
            list.append(t.cell(0,3).text)                 
            list.append(t.cell(0,12).text)
            list.append(t.cell(1,3).text)
            list.append(t.cell(1,7).text)
            list.append(t.cell(1,10).text)
            list.append(t.cell(1,15).text)
            list.append(t.cell(2,4).text)
            list.append(t.cell(2,10).text)
            list.append(t.cell(7,3).text)
            list.append(t.cell(7,5).text)
            list.append(t.cell(7,11).text)
            list.append(t.cell(13,3).text)
            list.append(t.cell(14,3).text)
            list.append(t.cell(15,3).text)
            list.append(t.cell(17,3).text)
            list.append(t.cell(18,3).text)
            list.append(t.cell(18,11).text)
            list.append(t.cell(19,3).text)
            list.append(t.cell(20,3).text)
            list.append(t.cell(21,3).text)
            booksheet.append(list)
    workbook.save('D:\\工作\\省厅核查\\export.xlsx')

 

### 回答1: 可以使用Python读取Word文档中的数据,并将其写入Excel表格中。具体的实现可以使用Python中的Pandas和docx库。首先使用docx库读取Word文档中的数据,然后使用Pandas将数据写入Excel表格中。 ### 回答2: Python是一种非常强大的编程语言,它能够帮助我们轻松地在不同的文档之间进行数据处理和转换。在这篇文章中,我们将会探讨如何使用PythonWord文档中的数据读取出来,并写入Excel电子表格中。 Python读取Word数据 要读取Word文件,我们可以使用Python库中的“docx”库。这个库可以使我们轻松地读取Word文档中的数据。在我们开始处理Word文档中的数据之前,我们需要先安装这个库。我们可以使用pip包管理器来安装这个库,只需要在终端中执行以下命令: pip install python-docx 安装完这个库我们就可以开始读取Word文件中的数据了。以下是从文档中读取数据的代码: # 引入docx库 import docx # 打开文档 doc = docx.Document('document.docx') # 读取文档中的段落数据 for para in doc.paragraphs: print(para.text) 我们可以看到,这段代码首先打开了一个Word文档,然后使用循环读取了文档中的所有段落,并将它们打印到控制台中。 Python读取的数据写入Excel电子表格 要将数据写入Excel电子表格,我们需要使用Python中的“openpyxl”库。这个库可以帮助我们读写Excel电子表格中的数据。我们同样可以使用pip包管理器来安装这个库,只需要在终端中执行以下命令: pip install openpyxl 以下是将读取Word文档中的数据写入Excel电子表格的代码: # 引入openpyxl库 import openpyxl # 打开电子表格 workbook = openpyxl.Workbook() # 选中第一个表格 sheet = workbook.active # 打开文档,读取数据并写入表格 doc = docx.Document('document.docx') for i, para in enumerate(doc.paragraphs): cell = sheet.cell(row=i+1, column=1) cell.value = para.text # 保存表格 workbook.save('document.xlsx') 代码中,我们首先打开了一个新的Excel电子表格,并读取了一个名为“document.docx”的Word文档。然后将文档中的每一个段落Excel电子表格的第一列中写入,最后存储电子表格。 总结 Python是一种非常强大的编程语言,可以帮助我们轻松地在不同的文档之间进行数据处理和转换。我们可以使用Python中的“docx”和“openpyxl”库来快速读取写入Word文档Excel电子表格中的数据。在处理大量数据时,Python是一个不错的选择,通过学习和使用Python,相信你也能够轻松处理不少数据操作问题。 ### 回答3: Python是一种流行的编程语言,具有灵活性和强大的功能,可以方便地读取Word文档并将其写入Excel。在Python中,我们可以使用多种库来操作Word文档Excel工作簿,如python-docx库和openpyxl库。 要读取Word数据并将其写入Excel,我们首先需要安装这些库。可以使用以下命令在终端中安装它们: ``` pip install python-docx pip install openpyxl ``` 安装完成后,我们可以使用以下代码将Word文档中的表格数据读取写入Excel工作簿中: ```python import docx from openpyxl import Workbook # 打开Word文档 doc = docx.Document('example.docx') # 创建Excel工作簿 wb = Workbook() # 选择第一个工作表 ws = wb.active # 获取Word文档中的表格数据 for table in doc.tables: for i, row in enumerate(table.rows): for j, cell in enumerate(row.cells): # 将表格数据写入Excel单元格中 ws.cell(row=i+1, column=j+1, value=cell.text) # 保存Excel工作簿 wb.save('example.xlsx') ``` 在这个例子中,我们首先使用docx库打开一个Word文档,并使用openpyxl库创建一个Excel工作簿。然后,我们选择第一个工作表并使用循环来遍历Word文档中的所有表格数据。在循环中,我们将表格数据写入Excel工作表的单元格中,并使用save方法保存Excel工作簿。 总之,Python提供了一种简单而有效的方式来读取Word文档并将其写入Excel工作簿中。使用python-docx库和openpyxl库,我们可以轻松地完成这项任务,并处理任何的表格中存在的信息。
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值