예제 #1
0
def _get_kaggle_notebook_content():
    """Returns the kaggle notebook python code contents."""
    if PythonExporter is None:
        raise RuntimeError(
            # This should never occur.
            # `nbconvert` is always installed on Kaggle.
            "Please make sure you have installed `nbconvert` package.")
    from kaggle_session import UserSessionClient  # pylint: disable=g-import-not-at-top  # pytype: disable=import-error
    kaggle_session_client = UserSessionClient()
    try:
        response = kaggle_session_client.get_exportable_ipynb()
        ipynb_stream = io.StringIO(response["source"])
        py_content, _ = PythonExporter().from_file(ipynb_stream)
        return py_content.splitlines(keepends=True)
    except:
        raise RuntimeError("Unable to get the notebook contents.")