python docx 利用tables读取表格存在错行

最近因为工作原因一直在使用python docx提取word中的表格及内嵌文件

发现大家一般使用的提取方法都是直接用enumerate table.rows和row.cells直接读取表格的每行,每列,但是这样会导致一个问题,word中的table很多时候是手画的,或者经过多次编辑,行和列都存在对不齐的现象,如果用这种方法去提取表格则会导致串行。

于是我就想到直接读取表格的xml信息,然后用xml来提取表格信息的方法

##path 文件所在位置
##tb_location 所要提取的表格为文档中的第几个表格

def extract_table(path,tb_loc_dic):
    document = Document(path)
    tables = document.tables 

    rel_list=[]           
        
    proxy=[]
    for p in document.tables:
        proxy.append(p._element.xml)
    wp_lt=[]
    wt_lt=[]  
    cell_lt=[]  
    wtr_lt=[] 
    title_lt=[]
    cell0full=""
    cell0_lt=[]
    wp_lt_2=[]
    ##wtr 每行
    wtr_str=".//{http://schemas.openxmlformats.org/wordprocessingml/2006/main}tr" 
    ## wtc 每个cel
    wtc_str=".//{http://schemas.openxmlformats.org/wordprocessingml/2006/main}tc"
    ##wp 每个cell里每行
   
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值