Как стать автором
Обновить

Microsoft выпустила MarkItDown — открытый инструмент на Python для преобразования файлов и офисных документов в Markdown

Время на прочтение1 мин
Количество просмотров11K
Всего голосов 12: ↑12 и ↓0+16
Комментарии8

Комментарии 8

В репозитории подозрительно мало кода. Это вызвало любопытство, пробежался глазами по реализации. Оказалось, что либа чуть более чем полностью состоит из набора хаков и довольно прямолинейных способов распарсить разные форматы файлов. Несколько рандомных строчек, за которые зацепился глаз:

alt_text = shape._element._nvXxPr.cNvPr.attrib.get("descr", "")

qs["u"][0][2:].strip() + "=="

except ValueError: # It's not clear if this ever gets thrown

Todo

Кажется, что раньше Microsoft делал либы покачественнее...

Как Гвидо их научил, так и лепят =)

Вроде всё просто

class DocxConverter(HtmlConverter):
""" Converts DOCX files to Markdown. Style information (e.g.m headings) and tables are preserved where possible. """

...

result = mammoth.convert_to_html(docx_file, style_map=style_map)

А для ковертации Excel используют import pandas as pd

Именно, до неприличия просто. Майкрософт парсит свои форматы файлов опенсорсными либами и костылями с прямым доступом к структуре - мне странно такое видеть в официальной библиотеке компании.

Они просто выложили свою обертку, в которой в однотипные команды обернули уже существующие библиотеки. По сути ничего нового и радоваться нечему, просто выдёргивание текстовой информации из файлов чтоб потом скормить нейросетке.

Так а зачем переусложнять? 90% документов базового пользователя покроет, а для того, чтобы оставшиеся сложные кейсы добить, и ста лет не хватит

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Другие новости