使用webbrowser.get后,我可以获得有关'a'变量内容的信息吗?我得到的不仅仅是'webbrowser.WindowsDefault对象在0x024643B0'。我想知道哪个浏览器是默认的,并将此信息传输到字符串
import webbrowser
a = webbrowser.get('windows-default')
print a
a.open('http://www.google.com')
答案 0 :(得分:0)
这是一个两步解决方案:
type(a).__class__
当您运行a = webbrowser.get('windows-default')
时,您可以获取a的类名:browser_class = type(a).__class__
。
根据below picture,您可以按照以下方式对 2 中突出显示的方法进行编码:
def which_browser(browser_class):
return{
'Mozilla': 'firefox',
'Chrome' : 'google-chrome'
}.get(browser_class,'firefox')
此方法返回浏览器类型名称,具体取决于您在上面browser_class
中获得的浏览器类名称。请注意,我将方法设置为默认情况下 mozilla ,但这不一定是简单测试。我的意思是,你可以简单地运行:
def which_browser(browser_class):
return{
'Mozilla': 'firefox',
'Chrome' : 'google-chrome'
}
然后,您可以调用which_browser()
方法获取浏览器类型名称:
browser_name = which_browser(browser_class)
browser_name的类型为str
。
您可能需要与上述相关联的信息:
我测试了以下代码,根据我在Linux机器上的内容,我只安装了2个浏览器:
import webbrowser
a = webbrowser.get('windows-default')
def which_browser(b):
return{
'Mozilla': 'firefox',
'Chrome' : 'google-chrome'
}.get(b,'firefox')
print which_browser(type(a).__class__)
运行程序后,我得到了这个输出:firefox
。