如何将docutils文档树转换为HTML字符串?

时间:2015-08-23 13:53:36

标签: python html restructuredtext docutils

我正在尝试使用docutils包将ReST转换为HTML。 This answer简洁地使用docutils publish_*便利函数来一步完成此操作。我要转换的ReST文档有多个部分,我想在生成的HTML中分隔。因此,我想打破这个过程:

  1. 将ReST解析为节点树。
  2. 根据需要分开节点。
  3. 将我想要的节点转换为HTML。
  4. 这是我正在努力的第三步。以下是我执行第一步和第二步的方法:

    from docutils import utils
    from docutils.frontend import OptionParser
    from docutils.parsers.rst import Parser
    
    # preamble
    rst = '*NB:* just an example.'   # will actually have many sections
    path = 'some.url.com'
    settings = OptionParser(components=(Parser,)).get_default_values()
    
    # step 1
    document = utils.new_document(path, settings)
    Parser().parse(rst, document)
    
    # step 2
    for node in document:
       do_something_with(node)
    
    # step 3: Help!
    for node in filtered(document):
       print(convert_to_html(node))
    

    我找到了HTMLTranslator班级和Publisher班级。它们看似相关,但我很难找到好的文档。我该如何实现convert_to_html函数?

0 个答案:

没有答案