55 votes

Analyser reStructuredText en HTML

Je suis en train de faire un cadre dans lequel je laisse les développeurs décrivent leur package à l'aide de reStructuredText. Je veux analyser que reStructuredText en HTML afin que je puisse l'afficher dans une interface graphique.

Je suis familier avec l'excellent Sphinx, mais je n'ai jamais autrement analysé reStructuredText. J'ai imaginé quelque chose comme une fonction qui prend une chaîne de reStructuredText, et éventuellement plusieurs arguments supplémentaires, et renvoie une chaîne de HTML.

Alors j'ai regardé dans Docutils, qui est responsable de l'analyse reStructuredText. Je ne comprenais pas du tout comment faire pour trouver cette fonction. La Documentation sur le web est inégale. De nombreuses fonctions dans l' docutils.parsers.rst module semblait être orientée vers les noms de fichiers. Je n'ai pas de nom de fichier! Je suis juste de la manipulation de chaînes de caractères.

J'ai essayé de créer un Parser et Document et à l'aide de l' parse méthode, mais je viens d'obtenir une erreur à propos d'un manque .tab_width réglage.

Personne ne sait comment analyser reStructuredText en HTML?

63voto

Anurag Uniyal Points 31931

Essayez quelque chose comme ça:

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

publish_string accepte une chaîne et génère une chaîne ou vous pouvez utiliser publish_parts pour obtenir des parties spécifiques d'un document HTML, par exemple

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X