保存和加载笔记本到本地存储
项目描述
Jupyter Offline Notebook
将笔记本保存和加载到浏览器存储,即使您已断开与服务器的连接。
安装
pip install jupyter-offlinenotebook
这应该会自动在Jupyter Notebook和JupyterLab上启用扩展。
此扩展支持JupyterLab 3和4,以及NBclassic。对于JupyterLab 2和 Notebook <7,请使用版本0.2.2。
用法
根据您的配置和运行笔记本的位置,您应该会看到最多五个新的按钮
- 下载笔记本的内存(浏览器)状态
- 将笔记本的内存状态保存到本地存储
- 从本地存储加载笔记本
- 打开包含此笔记本的存储库的永久URL
- 复制此存储库的永久mybinder URL以共享它
保存和加载使用存储库ID和当前笔记本的路径。
您应该始终看到“下载”按钮。如果您在mybinder上运行此程序,所有按钮都应该是可见的。有关在其他系统上启用其他按钮的配置,请参阅下面的配置部分。
如果您看不到按钮,请检查JavaScript控制台日志。
配置
可以通过在jupyter_notebook_config.py
中设置以下c.OfflineNotebookConfig
属性来配置此扩展
repository_id
:一个返回仓库ID的可调用函数。在存储和检索笔记本时使用。默认值是BINDER_REPO_URL
环境变量的值。repository_ref_url
:一个返回仓库引用URL的可调用函数。默认值是BINDER_REF_URL
环境变量的值。binder_persistent_url
:一个返回仓库引用URL的可调用函数。默认值是BINDER_LAUNCH_HOST
和BINDER_PERSISTENT_REQUEST
环境变量的值。binder_repo_label
:一个返回用于链接到仓库的标签的可调用函数。
警告
此扩展仍在开发中。仅在Firefox上进行了测试。未来可能会有破坏性的更改。
此扩展存在一些重大限制,包括
- 本地存储受浏览器施加的配额限制。
- 使用空格将Jupyter Notebook中笔记本的ID和路径组合在一起,用于仓库ID。这可能在将来发生变化。
开发笔记
此扩展使用IndexedDB API和包装Dexie.js在浏览器存储中存储笔记本。
初始化期间进行一次服务器API调用以获取存储配置。其余所有操作都在客户端完成,因此即使服务器断开连接也应该可以工作。
CI流水线使用JupyterLab 4构建扩展,但构建包与JupyterLab 3和NBclassic兼容。安装开发依赖项
pip install -r dev-requirements-jl4.txt
要构建和安装开发版本
pip install .
这会自动运行jlpm
。
笔记本和服务器扩展应自动启用。
JupyterLab 3+支持以静态包的形式安装扩展,因此无需进一步操作。
要测试在本地开发时绑定和仓库按钮是否正常工作,请设置一些占位符环境变量,例如
BINDER_LAUNCH_HOST=http://localhost BINDER_REPO_URL=http://localhost BINDER_PERSISTENT_REQUEST=v2/gh/repo BINDER_REF_URL=http://localhost jupyter-lab --debug
如果您进行了任何更改,请记得运行所有linters和auto-formatters
pre-commit run -a
jlpm run format
项目详情
下载文件
下载适合您平台文件的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。
源分布
构建分布
哈希值 for jupyter_offlinenotebook-0.3.1-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fdafb27be007eeb117e17db9be3dab8d57737245758a5f0c45cb966227607d64 |
|
MD5 | 1d4d50b3e04062556c06ef79af7f4563 |
|
BLAKE2b-256 | 80b7b699203c66de5ade1c6f952bcf0c073216742043c0e66fa412f3002d7a32 |