Jupiterノートブックを使用して、開発者が検証テストを文書化できるインフラストラクチャを開発しています。インフラストラクチャの一部は、.ipynb
ファイルを.html
ファイルに変換して、テストの公開ドキュメントを提供できるpythonスクリプトになります。Jupyterノートブックでpandocとpandoc-citeprocを使用する
私が望むほとんどのモジュールがnbconvert
モジュールを使用していますが、最終的なHTMLファイルで引用と参照を許可したいと思います。私は、適切なインライン構文の引用を変換し、参照セクションを追加するHTMLテキストを生成するためにpypandoc
を使用することができます。
from urllib import urlopen
import nbformat
import pypandoc
from nbconvert import MarkdownExporter
response = urlopen('SimpleExample.ipynb').read().decode()
notebook = nbformat.reads(response, as_version=4)
exporter = MarkdownExporter()
(body, resources) = exporter.from_notebook_node(notebook)
filters = ['pandoc-citeproc']
extra_args = ['--bibliography="ref.bib"',
'--reference-links',
'--csl=MWR.csl']
new_body = pypandoc.convert_text(body,
'html',
'md',
filters=filters,
extra_args=extra_args)
問題は、これはHTMLがnbconvert.HTMLExporter
が提供するかなりのフォーマットおよびその他の機能のすべてを失う生成していることです。
私の質問は、nbconvert.HTMLExporter
と私はインライン引用と後者から追加リファレンスセクションで、主に前者得るようpypandoc.convert_text()
の結果をマージする簡単な方法はありますか?