【问题标题】:jupyter nbconvert --to notebook not excluding raw cellsjupyter nbconvert --to notebook 不排除原始单元格
【发布时间】:2018-12-30 01:11:19
【问题描述】:

我正在尝试将笔记本从 ./doc 文件夹导出到项目根目录中的 `./notebook/ 文件夹,但删除了我最初拥有的所有原始单元格。

我尝试了以下方法:

jupyter nbconvert --to notebook $< --output=$@ --TemplateExporter.exclude_raw=True

我在 Makefile 中执行此操作(因此,$&lt;$@ 分别是本地笔记本的名称和笔记本移动到顶级 ./notebook 目录后的名称) .

它运行,但原始单元格仍然存在于笔记本的副本中。我有什么遗漏吗?

【问题讨论】:

    标签: makefile jupyter nbconvert


    【解决方案1】:

    似乎是由于一个错误 - 当输出格式为“笔记本”时,nbconverts 似乎走捷径,绕过预处理器。

    我在 github 上遇到了至少一个与此相关的问题: https://github.com/jupyter/nbconvert/issues/895

    这是我的解决方法。

    1. 创建自定义模板文件custom_notebook.tpl,内容如下:
    {% extends 'null.tpl'%}
    
    {%- block body %}
    {{ nb | json_dumps }}
    {% endblock body %}
    
    

    这实际上是复制笔记本,但允许预处理器运行。

    1. 在命令行中将--to notebook 替换为--to custom --template=custom_notebook.tpl

    结果将是一个有效的笔记本,上面运行了过滤器。我没有使用--TemplateExporter.exclude_raw=True 进行测试,但它与--TagRemovePreprocessor.remove_cell_tags 一起使用,与--to notebook 选项具有相同的无效效果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-27
      • 1970-01-01
      • 2016-09-22
      • 2021-05-24
      • 2020-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多