Да, это возможно и легко, это будет (в основном) в ядре IPython для 2.0, я бы посоветовал пока посмотреть на эти примеры .
[редактировать]
$ jupyter nbconvert --to notebook --execute original.ipynb --output=new.ipynb
Теперь он находится в Jupyter NbConvert. NbConvert поставляется с набором Preprocessor
s, которые по умолчанию отключены, два из них ( ClearOutputPreprocessor
и ExecutePreprocessor
) представляют интерес. Вы можете включить их в своем (локальном | глобальном) конфигурационном файле (файлах) через c.<PreprocessorName>.enabled=True
(Верхний регистр, это python) или в командной строке, --ExecutePreprocessor.enabled=True
сохранив остальную часть команды как обычно.
У --ExecutePreprocessor.enabled=True
него удобный --execute
псевдоним, который можно использовать в последней версии NbConvert. Это может быть в сочетании с --inplace
при желании
Например, конвертируйте в HTML после запуска ноутбука без головы:
$ jupyter nbconvert --to=html --execute RunMe.ipynb
преобразование в PDF после удаления выходных данных
$ ipython nbconvert --to=pdf --ClearOutputPreprocessor.enabled=True RunMe.ipynb
Это (конечно) действительно работает с ядрами, отличными от python, порождая <insert-your-language-here>
ядро, если вы установили --profile=<your fav profile>
. Преобразование может длиться очень долго, поскольку требуется перезапуск ноутбука. Вы можете преобразовать блокнот в блокнот с--to=notebook
опцией.
Существуют различные другие параметры (тайм-аут, разрешить ошибки, ...), которые, возможно, потребуется установить / отключить в зависимости от варианта использования. См. Документацию и, конечно же jupyter nbconvert --help
, --help-all
или nbconvert онлайн-документацию для получения дополнительной информации.
$ ipnbdocttest.py original.ipynb new.ipynb
gist.github.com/davidshinn/6110231