Я хочу написать программу, которая захватывает мои файлы docx, просматривает их и разбивает каждый файл на несколько отдельных файлов на основе заголовков.Внутри каждого документа есть пара статей, каждая с заголовком 1 и текстом под ним.
Так что, если в моем исходном файле file1.docx есть 4 статьи, я хочу, чтобы он был разбит на 4 отдельных файла с заголовком и текстом.файлов по пути, где я храню файлы .docx, и я могу читать заголовки и текст отдельно, но я не могу найти способ объединить все это и разделить его на отдельные файлы, каждый с заголовкоми текст.Я использую библиотеку python-docx.
import glob
from docx import Document
headings = []
texts = []
def iter_headings(paragraphs):
for paragraph in paragraphs:
if paragraph.style.name.startswith('Heading'):
yield paragraph
def iter_text(paragraphs):
for paragraph in paragraphs:
if paragraph.style.name.startswith('Normal'):
yield paragraph
for name in glob.glob('/*.docx'):
document = Document(name)
for heading in iter_headings(document.paragraphs):
headings.append(heading.text)
for paragraph in iter_text(document.paragraphs):
texts.append(paragraph.text)
print(texts)
Как извлечь текст и заголовок для каждой статьи?
Это чтение XML, которое дает мне python-docx.Красные скобки отмечают то, что я хочу извлечь из каждого файла.
https://user -images.githubusercontent.com / 17858776 / 51575980-4dcd0200-1eac-11e9-95a8-f643f87b1f40.png
Я открыт для любых альтернативных предложений о том, как добиться того, что я хочу, с помощью различных методов, или если есть более простой способ сделать это с помощью файлов PDF.