jupyter notebook 自动生成python和html文件

命令行中运行 ipython locate profile default

找到配置文件目录


切到.jupyte目录下新建文件 jupyter_notebook_config.py

粘贴代码到 jupyter_notebook_config.py



# Based off of 

# https://github.com/jupyter/notebook/blob/master/docs/source/extending/savehooks.rst

import io

import os

from notebook.utils import to_api_path

_script_exporter = None

_html_exporter = None

def script_post_save(model, os_path, contents_manager, **kwargs):

    from nbconvert.exporters.script import ScriptExporter

    from nbconvert.exporters.html import HTMLExporter

    if model['type'] != 'notebook':

        return

    global _script_exporter

    if _script_exporter is None:

        _script_exporter = ScriptExporter(parent=contents_manager)

    log = contents_manager.log

    global _html_exporter

    if _html_exporter is None:

        _html_exporter = HTMLExporter(parent=contents_manager)

    log = contents_manager.log

    # save .py file

    base, ext = os.path.splitext(os_path)

    script, resources = _script_exporter.from_filename(os_path)

    script_fname = base + resources.get('output_extension', '.txt')

    log.info("Saving script /%s", to_api_path(script_fname, contents_manager.root_dir))

    with io.open(script_fname, 'w', encoding='utf-8') as f:

        f.write(script)

    # save html

    # base, ext = os.path.splitext(os_path)

    # script, resources = _html_exporter.from_filename(os_path)

    # script_fname = base + resources.get('output_extension', '.txt')

    # log.info("Saving html /%s", to_api_path(script_fname, contents_manager.root_dir))

    # with io.open(script_fname, 'w', encoding='utf-8') as f:

    #    f.write(script)

c.FileContentsManager.post_save_hook = script_post_save



重启jupyter notebook,每次保存笔记本后就会自动生成python文件和html文件了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容