雪山一枝蒿 发表于 2021-5-7 13:13:25

使用python-docx删除word文档中的空行

如何使用python-docx删除word文档中的空行(就是只有个换行符的行),我说的删除是在原文档中删除,不是取出有文字的行,再生成新文档,因为原文档中有python-docx不能处理的内容 ,要保持 原样。

西师 发表于 2021-5-8 10:24:35

from docx import Document
def delete_paragraph(paragraph):
    p = paragraph._element
    p.getparent().remove(p)
    p._p = p._element = None
# 创建空白文档,并设置样式
myDocument = Document('test1.docx')
# 设置一个空白样式
for num,paragraphs in enumerate(myDocument.paragraphs):
    if paragraphs.text == "":
      print('第{}段是空行段'.format(num))
      paragraphs.clear()#清除文字,并不删除段落,run也可以,
      delete_paragraph(paragraphs)
myDocument.save('test2.docx')

楚冬忍 发表于 2021-5-28 22:39:39

有误删除的情况,一行中只有图没有文字的,也被删除了
页: [1]
查看完整版本: 使用python-docx删除word文档中的空行