Python提取word中的表格,填充到excel

前言

本篇内容,让你完全掌握Python是如何自动化办公的~

一、环境准备

1.1  Python 3.7.0

1.2  Pycharm  (Python 开发工具)

1.3  docx(处理word文件的工具类)  

1.4  openpyxl  (处理Excel工具类)

docx 安装:pip install python-docx -i https://pypi.douban.com/simple/

openpyxlpy安装:pip install openpyxl -i https://pypi.douban.com/simple/

python3.7.0、pycharm 软件均在我们的百度网盘里:https://pan.baidu.com/s/1Pe0cZzLU1v46EHZZ7EGCnQ

资源获取请加Python学习交流群进行获取:367203382 。 

二、上代码

   '''
    9、提取word中的表格,填充到excel
    '''
    def word_table_to_excel(self, path,type):
        word_list = self.do_path_like(path,type)
        key_list = []  # 定义Excel的字段
        for k, v in enumerate(word_list):
            # 创建工作簿
            wb = Workbook()
            # 激活
            ws = wb.active
            doc = docx.Document(v)
            if k == 0:
                # 取出一个表格里面的key 字段
                # 第一个表,第一行的所有单元格,就是字段的所在行
                for cell in doc.tables[0].rows[0].cells:
                    key = cell.text
                    key_list.append(key)

                # 把key 添加到Excel,只添加到一次,so,放到if 下
                ws.append(key_list)

            for table in doc.tables:
                # 要排除第一行,所以从1开始
                for row in table.rows[1:]:
                    # 遍历一行,就生成一个列表
                    value_list = []
                    for cell in row.cells:
                        value_list.append(cell.text)
                    ws.append(value_list)

            # 获取word 文件后缀名,并替换成.xlsx
            file_type_name = os.path.splitext(v)[1]
            excel_path = v.replace(file_type_name, '.xlsx')

            #存储到result目录
            excel_path = os.getcwd()+'\\result\\'+os.path.basename(excel_path)

            wb.save(excel_path)
            print(excel_path+':提取完成')


        print('提取完成')

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

百里图书

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值