我是IPython / Jupyter笔记本的新手。我刚创建了一个笔记本(.ipynb),我想在我的网页上分享它。具体来说,我想添加一个链接,当人们点击它时,它会打开一个新的“网页”,在那里他们可以“查看”我的代码和结果。
注意:我不能使用github,这对我来说是一个巨大的痛苦。
我试过nbviewer(http://nbviewer.jupyter.org/)。它有几个选项,但只有其中一个(url)与github / gist无关。因此,为了获得我的文件的URL,我将其上传到谷歌驱动器,并获得该文件的公共链接。另一方面,当我将该链接放到nbviewer(作为我的文件的URL)时,它说“此URL中没有文件”。另一方面,我知道链接有效,因为当我把它放在浏览器上时,它会指示我下载.ipynb文件。
感谢您的帮助。
谢谢, 学家
答案 0 :(得分:5)
用于共享笔记本的非GitHub选项似乎有限。您仍然可以直接通过Google的colaboratory分享链接。这将允许您:
任何Google用户都可以查看(并选择编辑)您的笔记本。
另见其他选项:
答案 1 :(得分:3)
由于您已经创建了笔记本文件,因此可以轻松将其转换为html文件。在这种格式下,您可以轻松地共享或将其放在网站上。所以从提示符开始:
jupyter nbconvert --to html --execute YOUR_FILE.ipynb --output OUTPUT.html
还有其他格式:markdown,html,pdf,ipynb等
答案 2 :(得分:1)
Pycharm Professional还可以查看Jupyter笔记本
答案 3 :(得分:0)
签出此Firefox插件。 Python Notebook Viewer
它易于使用,不需要您打开终端/命令提示符,也可以脱机使用。请按照以下步骤操作。
https://addons.mozilla.org/en-US/firefox/addon/python-notebook-viewer/
答案 4 :(得分:0)
如果要在线共享Juptyer / IPython笔记本,请尝试使用jovian.ml。这是一个在Jupyter笔记本电脑上进行协作共享的平台,非常易于使用。
步骤1:安装Jovian python库
pip install jovian
步骤2:将库导入Jupyter / IPython笔记本
import jovian
步骤3:通过运行
将笔记本上传到您的Jovian帐户jovian.commit()
在Jupyter笔记本中。这将捕获Juptyer笔记本(以及运行它所需的Python库),并将其上传到您的帐户,从而为您提供可共享的链接。这是一个示例:https://www.jovian.ml/aakashns/01-pytorch-basics
查看者还可以单击鼠标,在Google Colab,BinderHub和Kaggle等云平台上运行笔记本电脑。
答案 5 :(得分:0)
下面的代码是Jupyter笔记本的简单查看器。它可以用于快速预览ipynb文件。将代码用作python jnv.py a.ipynb
,其中“ jnv.py”是下面的代码。如果有人将命令python jnv.py
分配为ipynb文件的查看器,则该代码也可以在文件管理器中使用,例如Total Commander。
# jnv.py: A simple viewer of a Jupyter notebooks (ipynb-files).
# Works for nbformat version >= 4.
import tkinter as tk
import sys,json
f = open(sys.argv[1], 'r', encoding="utf8") # input.ipynb
jf = json.load(f)
f.close()
# Take text ('source') from 'markdown' and 'code' cells
out_txt = ''
for cell in jf["cells"]:
if cell['cell_type'] == 'markdown':
for el in cell['source']:
out_txt = out_txt + el
elif cell['cell_type'] == 'code':
for el in cell['source']:
out_txt = out_txt + el
# Make a frame and display 'out_txt'. Press Esc to quit.
# See https://www.python-course.eu/tkinter_text_widget.php
root = tk.Tk()
def key(event):
if event.keycode == 27: # pressed Esc
root.destroy()
S = tk.Scrollbar(root)
T = tk.Text(root, height=24, width=80)
S.pack(side=tk.RIGHT, fill=tk.Y)
T.pack(side=tk.LEFT, fill=tk.Y)
S.config(command=T.yview)
T.config(yscrollcommand=S.set)
T.insert(tk.END, out_txt)
root.bind("<Key>", key)
tk.mainloop()