不要使用docutils.core.publish_parts(writer_name =“html”)转义HTML

时间:2012-11-08 20:16:33

标签: python restructuredtext

我正在尝试将部分HTML内容转换为ReStructuredText。问题是我有很多自定义HTML,如果我必须为每个东西编写一个特殊的解析器,我就会放弃转换。

默认情况下:

text = '''
  Heading
  =======
  <p class="jQuery-addThis">Test</p>
'''
docutils.core.publish_parts(text, writer_name='html')['html_body'] 

使用<>"转发&lt;&gt;&quot;

如何告诉publish_parts(或其他函数)不转换HTML?

其他信息:

我需要此功能,原因如下:

  • 2007-06-18
  • Google Analytics
  • 铁饼
  • Facebook插件
  • Twitter插件

我被告知切换到Markdown,但我宁愿使用ReStructuredText。这可能吗?

提前致谢!

编辑:我应该在主题行中包含“没有原始指令”。我猜这是不可能的,但是如果有人知道绕过它的方法,我会非常满满的。

1 个答案:

答案 0 :(得分:2)

您需要使用raw数据传递指令。你的例子将成为:

text = '''
  Heading
  =======
  .. raw:: html

     <p class="jQuery-addThis">Test</p>
'''
docutils.core.publish_parts(text, writer_name='html')['html_body'] 

您还可以考虑使用pandoc自动将HTML转换为restructuredText。