У меня возникла проблема с извлечением текста из .docx после удаления таблицы. Файлы docx, с которыми я имею дело, содержат множество таблиц, которые я бы хотел избавиться, прежде чем извлекать текст. Сначала я использую docx2html для преобразования файла docx в html, а затем используйте BeautifulSoup для удаления тега таблицы и извлечения текста.Как эффективно удалить таблицу из docx/xml и извлечь текст
from docx2html import convert
from bs4 import BeautifulSoup
...
temp = convert(FileToConvert)
soup = BeautifulSoup(temp)
for i in range(0,len(soup('table'))):
soup.table.decompose()
Text = soup.get_text()
В то время как этот процесс работает и производит то, что мне нужно, есть некоторая проблема эффективности с docx2html.convert(). Поскольку файлы .docx находятся в infact .xml-файлах, можно ли пропустить процедуру преобразования docx в html и просто извлечь текст из xml после удаления таблиц.
Вы были правы относительно python-docx. Он позаботится об извлечении текста из файлов .docx. После передачи docx в python-docx генерируется lxml.etree.Element, который можно манипулировать с помощью парсеров lxml. –