python 读取word 表格,写入excel

 python 读取word 表格,写入excel_第1张图片

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

python 读取word 表格,写入excel_第2张图片

用到两个模块,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')

 

你可能感兴趣的:(python)