从外部托管的Jupyter Notebook下载时动态提供文件

时间:2016-06-06 11:03:38

标签: python jupyter-notebook hosted

我正在使用托管在外部服务器上的Jupyter Notebook,即除了通过他的Jupyter笔记本外,用户无法访问服务器。我正在寻找一种方法,在这样的Jupyter Notebook中工作的用户可以将其结果作为直接从Jupyter服务器提供的文件下载。

这是一个小例子来说明我想要实现的目标:

# this code runs inside a Jupyter Notebook
import pandas as pd

testdata = { 'a' : [1,2,3,4],
             'b' : ['Hotel', 'Bed', 'Beer', 'TV']}

dataset = pd.DataFrame(testdata)

我正在寻找一种用户友好的方式来下载这个数据集(通常用户正在进行大量处理,在他准备好下载数据之前重新整形)。

例如:

mytools.download_dataframe_as_hdf(dataset)

dataset.to_hdf('test.hdf', 'test')
mytools.download_file('test.hdf')

是否有内置功能或实现此目的的简洁方法?

编辑:改进了简单的解决方案。

使用来自IPython.display的HTML可以在文件存在于服务器的文件系统上时轻松显示链接。

from IPython.display import HTML

HTML('<a href="test.hdf">download hdf</a>')

但是,我想找到一种通过缓冲流来提供数据的解决方案,即避免首先将数据转储到本地文件系统。有关如何以pythonic方式实现此功能的任何想法吗?

0 个答案:

没有答案