gpt4 book ai didi

python - 如何在 JupyterLab 中保存笔记本的当前状态

转载 作者:行者123 更新时间:2023-12-04 04:28:25 26 4
gpt4 key购买 nike

我想将 JupyterLab 笔记本(不是 Jupyter Notebook)导出为 HTML。
我在笔记本内部使用以下代码,正确导出笔记本:os.popen('jupyter nbconvert current_notebook.ipynb --to html').read()但是,nbconvert 不是获取当前笔记本,而是获取笔记本上次保存在磁盘上的状态。
所以,我需要在尝试导出之前保存状态。
我正在尝试使用以下代码:

%%javascript
IPython.notebook.save_notebook()
但显然 JupyterLab 不支持 JS API,因此它返回以下消息: Javascript Error: IPython is not defined您知道在导出笔记本之前保存当前状态的方法吗?

最佳答案

如果它是一个全新的笔记本并且您从上到下运行它,则可以在最后一个单元格中使用以下命令:

import os
%notebook -e test.ipynb
os.system('jupyter nbconvert --to html test.ipynb')
它将给出 test.html文件。
或者,您可以使用 javascript 和 HTML 来模拟 CTRL + s 事件,
from IPython.display import display, HTML

### emulate Ctrl + s
script = """
this.nextElementSibling.focus();
this.dispatchEvent(new KeyboardEvent('keydown', {key:'s', keyCode: 83, ctrlKey: true}));
"""
display(HTML((
'<input style="width:0;height:0;border:0">'
).format(script)))

import os

os.system('jupyter nbconvert --to html test.ipynb') # here, test is the name of your notebook
现在, keyCode: 83此行可以根据您的操作系统进行更改。如果你在windows下,83应该可以,否则你可能需要检查's'的键码,我发现最简单的方法是去这个网站 http://keycode.info/并输入 s .
引用: https://unixpapa.com/js/key.html

关于python - 如何在 JupyterLab 中保存笔记本的当前状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66110426/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com