浏览器打开不了python官网_python的webbrowser在Windows 7上启动IE而不是默认

我的主要问题是通过尝试将文件://添加到相对路径中是不正确的URL。可以用这个来修复:

webbrowser.open('file://' + os.path.realpath(filename))

使用webbrowser.open会尝试多个方法,直到一个“成功”,这是一个松散的定义。

WindowsDefault类调用失败的os.startfile()并返回False。我可以通过在Windows运行命令中输入URL并查看错误消息而不是浏览器来验证。

GenericBrowser和BackgroundBrowser都会使用一个exe来调用subprocess.Popen(),即使使用了不良的URL也会成功,并返回True。 IE不提供任何问题的指示,所有其他浏览器都有一个很好的消息,表示他们找不到该文件。

> GenericBrowser由环境变量BROWSER设置,是第一个。

> WindowsDefault是第二。

> BackgroundBrowser是最后一个,如果没有其他工作,包括回退IE。

这是我的原始设置:

>>> import webbrowser

>>> webbrowser._tryorder

['windows-default',

'C:\\Program Files\\Internet Explorer\\IEXPLORE.EXE']

>>> webbrowser._browsers.items()

[('windows-default', [, None]),

('c:\\program files\\internet explorer\\iexplore.exe', [None, ])]

>>>

这是修改环境变量后的设置:

C:>path=C:\Program Files (x86)\Mozilla Firefox;%path%

C:>set BROWSER=C:\Users\Scott\AppData\Local\Google\Chrome\Application\chrome.exe

C:>python

Python 2.7.1 (r271:86832, Nov 27 2010, 17:19:03) [MSC v.1500 64 bit (AMD64)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>> import webbrowser

>>> webbrowser._tryorder

['C:\\Users\\Scott\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe',

'windows-default',

'firefox',

'C:\\Program Files\\Internet Explorer\\IEXPLORE.EXE']

>>> webbrowser._browsers.items()

[('windows-default', [, None]),

('c:\\program files\\internet explorer\\iexplore.exe',[None, ]),

('firefox', [None, ]),

('c:\\users\\scott\\appdata\\local\\google\\chrome\\application\\chrome.exe', [None, ])]

>>>

webbrowser._tryorder给出了尝试浏览器的列表。注册chrome或添加BROWSER env var或修改我的路径全部会得到我正确的浏览器与更好的错误信息。

谢谢你们的帮助,没有你的想法,我无法解决这个问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值