为什么会出现“webbrowser.error:找不到可运行浏览器”?

pinkon5k  于 2021-08-20  发布在  Java
关注(0)|答案(1)|浏览(437)

我不熟悉python编码,我想知道是否有人能解释为什么这段代码在第二次尝试时有效,但在第一次尝试时无效?
我只是想打开一个不是默认的浏览器。
首次尝试-->无效

import webbrowser

url='https://www.mozilla.org'
webbrowser.register('firefox', None)
webbrowser.BackgroundBrowser("C:\\Program Files\\Mozilla Firefox\\firefox.exe")
webbrowser.get('firefox').open(url)
webbrowser.Error: could not locate runnable browser

Process finished with exit code 1

第二次尝试-->有效

import webbrowser

url='https://www.mozilla.org'
webbrowser.register('firefox', None, webbrowser.BackgroundBrowser("C:\\Program Files\\Mozilla Firefox\\firefox.exe"))
webbrowser.get('firefox').open(url)
Process finished with exit code 0
rggaifut

rggaifut1#

就像你在这里看到的, register 告诉python在哪里可以找到名为“firefox”的webbrowser。您必须传递一个示例( BackgroundBrowser )或者一个构造器。在第一个代码段中,您将none作为构造函数传递,该构造函数不是有效的浏览器类,因此它无法找到/创建浏览器,也无法注册它。在第二个片段中,您传递了 BackgroundBrowser 示例,因此它可以将此有效浏览器注册为“firefox”,您可以稍后运行它。
第五行( webbrowser.BackgroundBrowser... )在第一段代码中,基本上什么都不做,您应该将其作为 register 就像你在第二段中所做的那样。

相关问题