Source code for nbless.main.nbexec
#!/usr/bin/env python
from typing import Tuple
from nbconvert.preprocessors import ExecutePreprocessor
from nbformat.notebooknode import NotebookNode
from nbless.main.nbread import nbread
from nbless.helpers.get_stem import get_stem
[docs]def nbexec(nb_name: str, kernel: str = "python3") -> Tuple[str, NotebookNode]:
"""Create an executed notebook without modifying the input notebook.
:param nb_name: The name of the input notebook
"""
stem, nb = get_stem(nb_name), nbread(nb_name)
ep = ExecutePreprocessor(timeout=600, kernel_name=kernel)
ep.preprocess(nb, {"metadata": {"path": "."}})
return stem + "_executed.ipynb", nb