Open3
nbconvertを使用してJupyterファイルを変換したい

背景
Jupyterは便利。
しかしながらいくつか不都合な点が存在する。
- ipynbは一般的なファイル形式ではないため、内容を確認・編集するためにはJupyterをインストールする必要がある。
- GitHubではipynbを直接pushしてブラウザ上で表示できるものの、ipynbの実態はjsonであるためコミット時にdiffを確認しづらい。
- MarkdownとPythonと画像が1つのファイルにまとめられているため使用しにくい。
これらの問題点を解決していい感じにGit保存したい
方法
nbconvertを使用する。

nbconvertとは
jupyter nbconvert
とすれば呼び出せるツール。
.ipynb
形式のファイルを以下の形式に変換できる。
- HTML
- Markdown (md)
- executable script
- LaTeX
- etc...
CLIとして使用する
jupyter nbconvert --to <output format> <input notebook>
例: ノートブックを Markdown に変換する
mynotebook.ipynb
を変換する場合
jupyter nbconvert --to markdown mynotebook.ipynb

nbconvert をライブラリとして使用する
#!/bin/env python3
from nbconvert import MarkdownExporter
IPYNB_FILE_PATH = "mynotebook.ipynb"
markdown_exporter = MarkdownExporter()
md = markdown_exporter.from_filename(IPYNB_FILE_PATH)