Python-docx中add_page_break添加的分页符无法通过paragraph.contains_page_break检测到的问题求助
Python-docx中add_page_break添加的分页符无法通过paragraph.contains_page_break检测到的问题求助
各位好,我最近在用python-docx处理Word文档时碰到了个头疼的问题,想请大家帮忙看看。
我写了一段代码,逻辑很简单:创建一个文档,每添加2个段落就插入一个分页符,保存后重新打开这个文档,遍历所有段落,用paragraph.contains_page_break来检测分页符的存在,但结果这段代码完全没有输出,好像那些分页符根本没被识别到一样。
先贴一下我的测试代码:
from docx import Document from pathlib import Path if __name__ == "__main__": tmp_path = Path("../data") docx_path = tmp_path / "long_docx_with_breaks.docx" document = Document() for i in range(10): document.add_paragraph(f"This is paragraph {i + 1}.\n\n") if i % 2 == 1: # 每2个段落添加一个分页符 document.add_page_break() document.save(docx_path) check_doc = Document(docx_path) for paragraph in check_doc.paragraphs: if paragraph.contains_page_break: print("page_break")
我手动打开生成的Word文档,能清楚看到分页符确实存在,但这段检测代码就是什么都不输出。我有点懵:是contains_page_break这个属性的作用和我理解的不一样?还是add_page_break()的实现方式导致它不属于段落的一部分?有没有其他正确的方法能检测到这些分页符呢?
麻烦各位大佬帮忙分析下,谢谢啦!




