3

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_partsHTMLを変換しないように(または別の関数に)指示するにはどうすればよいですか?

追加情報:

次の理由でこの機能が必要です。

  • これを追加
  • グーグルアナリティクス
  • 円盤投げ
  • Facebookプラグイン
  • Twitterプラグイン

Markdownに切り替えるように言われましたが、ReStructuredTextを使用したいと思います。これは可能ですか?

前もって感謝します!

編集:件名に「生のディレクティブなし」を含める必要がありました。これは不可能だと思いますが、誰かがそれを回避する方法を知っていれば、私はとてもいっぱいになるでしょう。

4

1 に答える 1

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に自動的に変換することも検討できます。

于 2012-11-08T20:41:52.147 に答える