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('提取完成')

 

你可能感兴趣的:(python)