python пользователь - получить сноски из html документа, преобразованного из docx (docx2 python не работает) - PullRequest
1 голос
/ 28 января 2020

Мне нужна помощь в извлечении сносок из документов docx в python, так как файл docx содержит большое количество сносок.

Ниже приведен код, который у меня есть в данный момент, с проблемой, так как docx2 python не может читать текстовые документы больше, чем определенное количество страниц .

from docx2python import docx2python


docx_temp = docx2python(filepath)
footnotes = docx_temp.footnotes
footnotes = footnotes[0][0][0]
footnotes = [i.replace("\t","") for i in footnotes]

Поэтому я попробовал другие методы ниже, но я ' Я застрял, потому что я незнаком с XML, и я не уверен, что коды работают:

import re
import mammoth


with open(filepath, 'rb') as file:
    html = mammoth.convert_to_html(file).value
    #html = re.sub('\"(.+?)\"', '"<em>\1</em>"', html)
    fnotes = re.findall('id="footnote-<number>" (.*?) ', html)

И

import re
import zipfile
import xml.etree.ElementTree
from docx2python import docx2python


docxfile = zipfile.ZipFile(open(filepath,'rb'))
xmlString = docxfile.read('word/footnotes.xml').decode('utf-8')
fn = docxfile.read('word/footnotes.xml')
xml.etree.ElementTree.parse(fn)

Не могли бы вы, ребята, сказать мне, как правильно написать код для извлечения сносок из файлов docx / HTML. Спасибо за вашу помощь!

...