我想通过代码块保存笔记本(例如点击工具栏中的"磁盘"图标)。原因:我希望通过nbconvert
魔术使用%%bash
来保存HTML和幻灯片版本,但这会转换磁盘上的内容,而不是正在运行的内容。<\ n / p>
我不想每次保存都这样做(为此我看到一些可以设置的配置),但只是选择性地用于我的一些笔记本。我希望能够“全部运行”#34;并让最后几个单元格创建反映屏幕上新鲜数据的附加文件。
我已经尝试了%save
和%notebook
魔法,但我也没有找到(我能说的最好)。
有没有办法做到这一点?
答案 0 :(得分:2)
一种hacky方法是使用%%javascript
笔记本魔术来运行命令
require(["base/js/namespace"],function(Jupyter) {
Jupyter.notebook.save_checkpoint();
});
这将访问全局笔记本实例(当在笔记本页面上这是当前笔记本时)并手动触发保存和检查点。
答案 1 :(得分:2)
以下是python函数形式的@ louise-davies答案的可重用版本;
from IPython.display import Javascript
script = '''
require(["base/js/namespace"],function(Jupyter) {
Jupyter.notebook.save_checkpoint();
});
'''
def notebook_save():
Javascript(script)
print('This notebook has been saved')
答案 2 :(得分:0)
另一个选择是使用%% avascript和JQuery:
%%javascript
$("#save-notbook button").trigger('click');