Подтвердить что ты не робот

Разбор reStructuredText в HTML

Я создаю фреймворк, в котором я даю разработчикам описание своего пакета с помощью reStructuredText. Я хочу проанализировать этот reStructuredText в HTML, чтобы я мог показать его в графическом интерфейсе.

Я знаком с превосходным Sphinx, но я никогда не разбирал reStructuredText. Я представил что-то вроде функции, которая берет строку reStructuredText и, возможно, несколько дополнительных аргументов, и возвращает строку HTML.

Итак, я просмотрел Docutils, который отвечает за разбор reStructuredText. Я не мог понять, как найти эту функцию. Документация в Интернете является пятнистой. Многие из функций модуля docutils.parsers.rst, казалось, были направлены на имена файлов. У меня нет имен файлов! Я просто обрабатываю строки.

Я попытался создать Parser и Document и используя метод parse, но я просто получаю сообщение об ошибке .tab_width.

Кто-нибудь знает, как разобрать reStructuredText в HTML?

4b9b3361

Ответ 1

Попробуйте что-то вроде этого:

>>> from docutils.core import publish_string
>>> publish_string("*anurag*", writer_name='html')

publish_string принимает строки и выводит строку, или вы можете использовать publish_parts для получения определенных частей html-документа, например.

>>> from docutils.core import publish_parts
>>> print publish_parts("*anurag*", writer_name='html')['html_body']
<p><em>anurag</em></p>