Python docx не находит все разделы - PullRequest
1 голос
/ 05 августа 2020

Мне нужен этот код, чтобы иметь возможность работать с существующими документами, которые у меня есть, но он находит только один нижний колонтитул в каждом документе. Мне нужно найти все 3 (первая страница, четная и нечетная). Вот ссылка на мой тестовый документ: http://www.filedropper.com/testdoc_1

from docx import Document
document = Document('C:/Users/username/Desktop/SPECS/TEST DOC.docx')
print(len(document.sections))

for section in document.sections:
    footer = section.footer
    footer.paragraphs[0].text  = footer.paragraphs[0].text.replace("ISSUED FOR CONSTRUCTION", "DESIGN DEVELOPMENT")


document.save('C:/Users/username/Desktop/SPECS/TEST DOC.docx') 

1 Ответ

1 голос
/ 05 августа 2020

Итак, я ответил на свой вопрос, прочитав эту документацию: https://python-docx.readthedocs.io/en/latest/api/section.html

По умолчанию используется нижний колонтитул нечетной страницы. Для доступа к другим нижним колонтитулам (если вы включили другую первую страницу и даже нижние колонтитулы) вы должны использовать следующий код:

first_page_footer = section.first_page_footer
even_page_footer = section.even_page_footer
odd_page_footer = section.footer
...