有没有办法在colab中使用python的网络浏览器模块打开新选项卡?

Har*_*cha 4 python-3.x python-webbrowser google-colaboratory

import webbrowser
webbrowser.open_new_tab('www.google.com')
Run Code Online (Sandbox Code Playgroud)

我正在使用 Google-colaboratory 并得到 False 作为输出。相反,它应该打开一个带有 Google url 的新选项卡。它在 python 3.7 和 PyCharm 中运行良好。

我知道用colab编写的程序在谷歌云上运行,并且谷歌云中没有像浏览器那样的东西。

除了使用 selenium 工具之外,还有其他方法可以在 google-colab 中执行此操作吗?

提前致谢!

小智 11

有时,如果打开网页所需的代码行需要包含在条件语句或循环中,或者在任何无法将 %%javascript 写入单元格第一行的情况下,请使用此代码

from IPython.display import Javascript
def open_web():
    url = 'https://www.google.com/'
    display(Javascript('window.open("{url}");'.format(url=url)))
Run Code Online (Sandbox Code Playgroud)


jak*_*vdp 7

不,无法通过webbrowserColab 中的 Python 包来控制您的浏览器。原因是您的浏览器运行在本地计算机上,而 Colab 中的 Python 代码运行在 Google Cloud 中的虚拟机上。

通过 Colab 打开新选项卡的唯一方法是注入 javascript 代码,这将导致您的浏览器这样做;例如:

%%javascript
window.open('https://colab.research.google.com', '_blank');
Run Code Online (Sandbox Code Playgroud)

但请注意,您的浏览器可能会阻止以这种方式打开的窗口。