python docx删除word段落

使用python-docx编辑一个docx文档时, 对添加的方法使用很多, 但有时候也会用到删除和修改

python-docx中并没有提供delete()方法, github上给出了解决方法:

https://github.com/python-openxml/python-docx/issues/33

def delete_paragraph(paragraph):
    p = paragraph._element
    p.getparent().remove(p)
    # p._p = p._element = None
    paragraph._p = paragraph._element = None

经试验, 此方法对删除段落,表格,标题, 图片都是管用的: 

from docx import Document
docx = Document('word_file.docx')
def delete_docx_prefix_description(docx):
    delete_paragraph(docx.tables[0]) # 删除word中第一个table
    for p in docx.paragraphs:
        delete_paragraph(p)
        if ''.join(p.text.split(' ')).lower()=='header_keyword':
            break
    for p in docx.paragraphs:  
        if p.text.lower()=='': # 删除word中在开始部分的空白段落
            delete_paragraph(p)
        else:
            break

 

评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

auspark

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

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

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

打赏作者

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

抵扣说明:

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

余额充值