Tak, jest to możliwe i łatwe, będzie (głównie) w rdzeniu IPython dla 2.0, sugerowałbym przyjrzenie się tym przykładom na razie.
[edytować]
$ jupyter nbconvert --to notebook --execute original.ipynb --output=new.ipynb
Jest teraz w Jupyter NbConvert. NbConvert zawiera kilka opcji, Preprocessorktóre są domyślnie wyłączone, a dwa z nich ( ClearOutputPreprocessori ExecutePreprocessor) są interesujące. Możesz je włączyć w swoich (lokalnych | globalnych) plikach konfiguracyjnych za pomocą c.<PreprocessorName>.enabled=True(Wielkie litery to python) lub w wierszu poleceń, --ExecutePreprocessor.enabled=Truezachowując resztę polecenia jak zwykle.
--ExecutePreprocessor.enabled=TruePosiada dogodne --executealias, które można wykorzystać na najnowszej wersji NbConvert. W --inplacerazie potrzeby można go łączyć
Na przykład przekonwertuj na html po uruchomieniu notebooka bez głowy:
$ jupyter nbconvert --to=html --execute RunMe.ipynb
konwersja do formatu PDF po usunięciu danych wyjściowych
$ ipython nbconvert --to=pdf --ClearOutputPreprocessor.enabled=True RunMe.ipynb
To (oczywiście) działa z jądrem innym niż Python, tworząc <insert-your-language-here>jądro, jeśli ustawisz --profile=<your fav profile>. Konwersja może trwać naprawdę długo, o ile wymaga ponownego uruchomienia notebooka. Możesz dokonać konwersji notebooka na notebook z --to=notebookopcją.
Istnieje wiele innych opcji (przekroczenie limitu czasu, zezwalanie na błędy, ...), które mogą wymagać ustawienia / wyłączenia w zależności od przypadku użycia. Zobacz dokumentację i oczywiście jupyter nbconvert --help, --help-allczy nbconvert dokumentacji online , aby uzyskać więcej informacji.
$ ipnbdocttest.py original.ipynb new.ipynbgist.github.com/davidshinn/6110231