python读取word 中指定位置的表格及表格数据

yipeiwu_com6年前Python基础

1.Word文档如下:

2.代码

# -*- coding: UTF-8 -*-
from docx import Document
def readSpecTable(filename, specText):
 document = Document(filename)
 paragraphs = document.paragraphs
 allTables = document.tables
 specText = specText.encode('utf-8').decode('utf-8')
 for aPara in paragraphs:
  if aPara.text == specText:
   ele = aPara._p.getnext()
   while (ele.tag != '' and ele.tag[-3:] != 'tbl'):
    ele = ele.getnext()
   if ele.tag != '':
    for aTable in allTables:
     if aTable._tbl == ele:
      for i in range(len(aTable.rows)):
       for j in range(len(aTable.columns)):
        print(aTable.cell(i, j).text)
if __name__ == '__main__':
 readSpecTable('test.docx', '符号约定')

3.结果

符号
符号
含义
数据域取值符号
M
必须填写的域
数据域取值符号
C
某条件成立时必须填写的域
数据域取值符号
O
可选,非必须填写的域
数据域取值符号

必须与先前报文中对应域的值相同的域
数据域取值符号
-
必须去除的域
数据域属性符号
 
基本数据域
数据域属性符号
[]
标识为消息组件名称数据域
数据域属性符号
{}
标识为消息组件中重复的数据域
数据域属性符号

标识为消息组件中包含的基础数据域
数据域属性符号
→[]
标识为消息组件中的子消息组件
数据域属性符号
→{}
标识为子消息组件中重复的数据域块
数据域属性符号
→→
标识为子消息组件中包含的基础数据域

PS:python读取word文档表格里的数据

首先需要安装相应的支持库:

直接在命令行执行pip install python-docx

示例代码如下:

import docx
from docx import Document #导入库
path = "E:\\python_data\\1234.docx" #文件路径
document = Document(path) #读入文件
tables = document.tables #获取文件中的表格集
table = tables[0 ]#获取文件中的第一个表格
for i in range(1,len(table.rows)):#从表格第二行开始循环读取表格数据
 result = table.cell(i,0).text + "" +table.cell(i,1).text+
 table.cell(i,2).text + table.cell(i,3).text
 #cell(i,0)表示第(i+1)行第1列数据,以此类推
 print(result)

总结

以上所述是小编给大家介绍的python读取word 中指定位置的表格及表格数据,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

解决出现Incorrect integer value: '' for column 'id' at row 1的问题

解决出现Incorrect integer value: '' for column 'id' at row 1的问题 前言: 今天在学习Python的过程中操作数据库,遇到了一个问题,...

Python正则表达式经典入门教程

本文实例总结了Python正则表达式基本用法。分享给大家供大家参考,具体如下: 正则表达式在平时做文本处理(爬虫程序去解析html中的字段,在分析log文件的时候需要抓取一些关键数据)的...

Python命令行参数解析模块optparse使用实例

示例 复制代码 代码如下: from optparse import OptionParser [...] def main():     usage =...

python+splinter自动刷新抢票功能

抢票脚本,python +splinter自动刷新抢票,可以成功抢到(依赖自己的网络环境太厉害,还有机器的好坏),但是感觉不是很完美。 有大神请指导完善一下(或者有没有别的好点的思路),...

python 中字典嵌套列表的方法

如下所示: >>> dict={} >>> dict['list']=[] >>> dict['list'].append([1...