Python webbrowser.open()打开Chrome浏览器

use*_*216 35 python python-3.x

根据文档http://docs.python.org/3.3/library/webbrowser.html,它应该在默认浏览器中打开,但由于某些原因,在我的机器上它打开IE.我做了谷歌搜索,我遇到了一个答案,说我需要注册浏览器,但我不知道如何使用webbrowser.register(),文档似乎不是很清楚.如何注册Chrome以便我传递给webbrowser.open()的网址在Chrome而不是IE中打开?

小智 68

您可以使用Chrome的路径调用get().下面是一个示例 - 将chrome_path替换为您的平台的正确路径.

import webbrowser

url = 'http://docs.python.org/'

# MacOS
chrome_path = 'open -a /Applications/Google\ Chrome.app %s'

# Windows
# chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'

# Linux
# chrome_path = '/usr/bin/google-chrome %s'

webbrowser.get(chrome_path).open(url)
Run Code Online (Sandbox Code Playgroud)

  • 不工作.它执行chrome但不退出.如何执行chrome并确保其打开然后转移到下一个操作? (3认同)

小智 28

对于Windows,路径使用UNIX样式路径,因此将反斜杠设置为正斜杠.

webbrowser.get("C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s").open("http://google.com")
Run Code Online (Sandbox Code Playgroud)

请参阅:Python:通用webbrowser.get().用于chrome.exe的open()不起作用

  • 这对我帮助很大 (2认同)

小智 9

import webbrowser 
new = 2 # open in a new tab, if possible

# open a public URL, in this case, the webbrowser docs
url = "http://docs.python.org/library/webbrowser.html"
webbrowser.get(using='google-chrome').open(url,new=new)
Run Code Online (Sandbox Code Playgroud)

您可以通过更改链接中给出的参数"使用"来使用任何其他浏览器


小智 5

你也可以使用这个:

import webbrowser

chrome_path = r"C:\Program Files\Google\Chrome\Application\chrome.exe"
url = "http://docs.python.org/"

webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(chrome_path))
webbrowser.get('chrome').open_new_tab(url)
Run Code Online (Sandbox Code Playgroud)