想在自己的网页上嵌入 interactive Jupiter notebook,这样可以在网页上直接运行代码。参考了很多有帮助的帖子,把我一整天的挣扎记录在这hhh
- 安装Jupiter notebook
如果已经装了anaconda,这步可以跳过。
Terminal里输入:
pip3 install jupyter notebook
- 下面这行会在当前directory生成一个 .jupyter 文件夹,里面包含 jupyter_notebook_config.py。(文件夹前面这个点代表它是隐藏的,mac可以去文件夹里Shift+Command+.显示隐藏文件)
jupyter notebook --generate-config
- 下面这行会先要你输入并确认一个密码,这个会是后面在网页打开jupyter的时候的登录密码。然后会在.jupyter文件夹里生成 jupyter_notebook_config.json文件,里面包含一串很长的argon2 password
jupyter notebook password
- 点开刚才的jupyter_notebook_config.py,可以看到里面全是一片注释掉的码,修改如下这些项:
c.NotebookApp.ip = '127.0.0.1' c.NotebookApp.password = 'xxx' #这里放json里面那一长串密码 c.NotebookApp.open_browser = False c.NotebookApp.port = 8888 #服务端口 c.NotebookApp.allow_root = True # 这一段是为了一会能用
我是直接放在文件最后面了,看到有教程说直接把对应的项取消注释然后改内容更好。
- 在.jupyter文件夹里新建custom文件夹,在里面创建custom.js
cd .jupyter mkdir custom touch custom.js
在custom.js写入
define(['base/js/namespace'], function(Jupyter){
Jupyter._target = '_self';
});
- 在html 里加入
我还没有自己的服务器和网站,html就是本地的一个html文件,但是要想授权它能嵌入jupyter,貌似需要一个ip地址,所以暂时的做法是在VS Code里安装 Live Server插件,运行后它生成的地址是 http://127.0.0.1:5500/。也就是为什么上面c.NotebookApp.tornado_settings里加入了这个地址。
- 开始运行
Terminal里:
jupyter notebook
然后用live server打开html文件
就可以看到嵌入进html里的jupyter窗口啦~
参考文章:
- https://zhuanlan.zhihu.com/p/110214228
- https://blog.csdn.net/thindi/article/details/83274719
- https://lovezxm.blog.csdn.net/article/details/88601249?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Edefault-15.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Edefault-15.no_search_link
- https://zhuanlan.zhihu.com/p/340249373
官方文档:
https://jupyter-notebook.readthedocs.io/en/stable/public_server.html#



