使用webbrowser模块在Firefox中打开网站
我正在尝试使用'webbrowser'模块在我的Firefox浏览器中访问一个网站。在这个网站上看了一些帖子后,我发现这段代码对大多数人都有效:
import webbrowser
webbrowser.get('firefox').open('www.google.com')
但是,我遇到了以下错误:
raise Error("could not locate runnable browser")
Error: could not locate runnable browser
我的代码到底哪里出问题了呢?
附注:Firefox并不是我默认的浏览器。
2 个回答
4
在Windows系统上,你可能需要提供Mozilla Firefox程序的文件路径。对我来说,这样做有效(_tryorder打印只是为了检查):
import webbrowser
ffpath = 'C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe'
print webbrowser._tryorder
webbrowser.register('firefox', None, webbrowser.BackgroundBrowser(ffpath), 1)
print webbrowser._tryorder
ff = webbrowser.get('firefox')
ff.open("http://www.google.com")
6
webbrowser._tryorder
这段话告诉你可以用来传递获取功能的有效浏览器。对我这个Linux用户来说,Firefox就在这个列表里。
如果Firefox不在这个列表里,可以尝试手动注册它:
import webbrowser
webbrowser.register('firefox', None, webbrowser.GenericBrowser('firefox'), 1)
webbrowser.get('firefox').open('https://www.google.com')
当然,我不能保证这个解决方案一定有效,因为我在Windows上没法测试。