在 IPython Notebook/Jupyter 单元格的新选项卡中打开 URL

Open URL in new tab from IPython Notebook/Jupyter cell

有没有办法使以编程方式生成的 url 在新的浏览器选项卡中打开或从 IPython 笔记本单元格中打开 window?

执行笔记本单元格后,结果应该是打开一个新选项卡或 window 指向生成的 link。

注意:当我只是 return 一个带有 hyperlink 的 IPython.core.display.HTML 实例时,link 被破坏了。如果 url 被复制并粘贴到浏览器中 window 它是有效的。

当您使用标准浏览器时,您可以使用 webbrowser 模块:

import webbrowser

# generate an URL
url = 'https://' + 'www.google.com'
webbrowser.open(url)

您可以使用javascript打开link客户端。它应该在远程服务器上工作,因为选项卡打开发生在用户的浏览器而不是服务器上。

这个简单的代码片段使用 window.open() 打开一个新的 tab/popup,其中包含您想要的 url。

from IPython.display import Javascript

def window_open(url):
    display(Javascript('window.open("{url}");'.format(url=url)))

@Cyber​​netic 我没有发表评论的名誉,我觉得编辑 Michael 的答案是不礼貌的...

下面的代码应该修复模块不可调用的错误:

import IPython

def window_open(url):
    IPython.display.display(IPython.display.Javascript('window.open("{url}");'.format(url=url)))