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

Mik*_*ike 7 ipython-notebook

有没有办法导致以编程方式生成的URL在IPython笔记本单元格的新浏览器选项卡或窗口中打开?

在执行笔记本单元时,结果应该是打开指向生成的链接的新选项卡或窗口.

注意:当我只返回带有超链接的IPython.core.display.HTML实例时,链接被破坏.如果将URL复制并粘贴到浏览器窗口中,则该URL有效.

Mik*_*ler 14

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

import webbrowser

# generate an URL
url = 'https://' + 'www.google.com'
webbrowser.open(url)
Run Code Online (Sandbox Code Playgroud)

  • 我不认为它会起作用,因为 Python 代码在 Web 服务器中运行,而您只是使用 Web 浏览器对其进行可视化和编辑 (2认同)
  • 好的。我的答案是“正常”使用。在本地运行 Notebook 服务器。没有远程服务器,没有 Docker。 (2认同)

Mic*_*era 7

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

这个简单的代码片段用于window.open()打开一个带有您所需网址的新选项卡/弹出窗口。

from IPython.display import Javascript

def window_open(url):
    display(Javascript('window.open("{url}");'.format(url=url)))
Run Code Online (Sandbox Code Playgroud)