【问题标题】:Make Jupyter notebook executable in html format使 Jupyter notebook 以 html 格式执行
【发布时间】:2021-04-12 13:45:28
【问题描述】:

我正在尝试以 HTML 格式导出 Jupyter 笔记本,以获取它的可执行版本。到目前为止,我的做法是将 notebook 上传到 git 存储库中,然后使用 binder 获取其可执行版本。我想在我的网页上上传笔记本而不传递活页夹项目的链接。这可能吗?

我阅读了有关 nbinteract 并看到有关制作动态小部件的教程,但在这里我试图使笔记本中的整个代码动态化。

有什么建议吗?

【问题讨论】:

    标签: html jupyter-notebook jupyter android-binder


    【解决方案1】:

    你不能。 jupyter需要一个服务器来执行python代码。

    如果您想在浏览器中执行一些 python 代码(或您的笔记本),您可以查看 https://github.com/gzuidhof/starboard-notebookhttps://github.com/pyodide/pyodide

    pyodide 文档的摘录:

    Pyodide 通过 WebAssembly 将 Python 3.8 运行时引入浏览器, 以及 Python 科学堆栈,包括 NumPy、Pandas、 Matplotlib、SciPy 和 scikit-learn。

    【讨论】:

    • 感谢您的回答。实际上,我有一个安装了jupyter服务器的sinology NAS。我的网站也使用相同的 NAS。同样在这种情况下是不是不可能整合它们?我想获得类似于本网站教科书节目的东西qiskit.org/textbook/ch-gates/…
    • 是的,你可以看看瞧。 github.com/voila-dashboards/voila
    【解决方案2】:

    您可以通过多种方式使用 Jupyter 内核从 HTML 页面中的代码单元执行代码:

    1. 使用thebelab.js:此Javascript 包允许您启动远程MyBinder 内核或连接到预先存在的Jupyter 服务器,然后将代码从HTML 页面发送到远程内核。远程内核执行代码,并将响应/代码输出返回到 HTML 页面,然后 HTML 页面可以渲染它。输出可以包括 HTML 小部件。

    2. 使用 nbinteract 从笔记本创建一个 HTML 页面,该页面可以在远程 MyBinder 服务器上执行代码,以在 HTML 页面中为交互式 ipywidgets 提供动力。

    3. 使用 jupyter-book 生成交互式 HTML 教科书/文档站点,该站点已配置为针对使用 thebelab.js 启动和管理的远程内核执行代码。

    您也可以使用jupyterlitejupyterlite 是 JupyterLab 和 RetroLab UI 的浏览器内实现,完全在浏览器中运行。代码是针对 WASM 实现的内核执行的。 目前可以使用 Python (pyodide)、Javascript 和 p5 内核。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-14
      • 1970-01-01
      • 1970-01-01
      • 2021-09-12
      • 1970-01-01
      • 1970-01-01
      • 2019-07-13
      • 2021-11-30
      相关资源
      最近更新 更多