特别是我想知道base_url
运行代码的笔记本服务器。
在 IPython Notebooks 2.x 版中,我曾经执行以下操作:
config = get_ipython().config
print config['NotebookApp']['base_url']
但是,这不再适用于 IPython Notebook 3.x / Jupyter Notebooks。
编辑:有关我要实现的目标的更多详细信息。
我在同一主机上的不同 Docker 容器中运行各种 IPython 服务器,这些容器通过不同base_url
的 s 访问。我想使用quantopian/qgrid包在 Notebook 中显示 Pandas DataFrames。最初qgrid
没有处理自定义base_url
前缀来提供 Javascript 依赖项的本地副本,但上面的代码允许我base_url
在 IPython 2 中找到并将相关base_url
的注入到 Javascript 模板中。
我还想在 Notebook 中使用mpld3库,在浏览他们的文档时,我发现他们还提到在“IPython 2.0+,如果添加 url 前缀(例如通过设置 NotebookApp.base_url),local=True 可能会失败”所以这似乎不是一个孤立的问题,一个好的解决方案是值得的。
鉴于下面@matt 的评论并更多地考虑内核与前端拆分,因此无法从内核访问 NotebookApp 配置是有道理的。确实是生成的 JS 代码需要知道它base_url
是什么,所以如果有人可以指出我可以在 Notebook JS API 中访问它的位置,那应该可以解决它。