python webbrowser

webbrowser


webbrowser一共有5个方法:

import webbrowser

webbrowser.open(url, new=0, autoraise=True)

webbrowser.open_new(url)

webbrowser.open_new_tab(url)

webbrowser.get(using=None)

webbrowser.register(name, constructor, instance=None)


首先来看python3.6.1的官方文档关于webbrowser的说明:

webbrowser.open(url, new=0, autoraise=True)
# Display url using the default browser. 
# If new is 0, the url is opened in the same browser window if possible. 
# If new is 1, a new browser window is opened if possible. 
# If new is 2, a new browser page ("tab") is opened if possible. 
# If autoraise is True, the window is raised if possible.
# (note that under many window managers this will occur regardless of the setting of this variable)

Note that on some platforms, trying to open a filename using this function, may work and start the operating system’s associated program. However, this is neither supported nor portable.


webbrowser.open_new(url)
# Open url in a new window of the default browser, if possible, otherwise, open url in the only browser window.


webbrowser.open_new_tab(url)
# Open url in a new page (“tab”) of the default browser, if possible, otherwise equivalent to open_new().


webbrowser.get(using=None)
# Return a controller object for the browser type using. 
# If using is None, return a controller for a default browser appropriate to the caller’s environment.

webbrowser.register(name, constructor, instance=None)
# Register the browser type name. 
# Once a browser type is registered, the get() function can return a controller for that browser type. 
# If instance is not provided, or is None, constructor will be called without parameters to create an instance when needed. 
# If instance is provided, constructor will never be called, and may be None.
This entry point is only useful if you plan to either set the  BROWSER variable or call get() with a nonempty argument matching the name of a handler you declare.

A number of browser types are predefined. This table gives the type names that may be passed to the get() function and the corresponding instantiations for the controller classes, all defined in this module.

Type NameClass NameNotes
'mozilla'Mozilla('mozilla') 
'firefox'Mozilla('mozilla') 
'netscape'Mozilla('netscape') 
'galeon'Galeon('galeon') 
'epiphany'Galeon('epiphany') 
'skipstone'BackgroundBrowser('skipstone') 
'kfmclient'Konqueror()(1)
'konqueror'Konqueror()(1)
'kfm'Konqueror()(1)
'mosaic'BackgroundBrowser('mosaic') 
'opera'Opera() 
'grail'Grail() 
'links'GenericBrowser('links') 
'elinks'Elinks('elinks') 
'lynx'GenericBrowser('lynx') 
'w3m'GenericBrowser('w3m') 
'windows-default'WindowsDefault(2)
'macosx'MacOSX('default')(3)
'safari'MacOSX('safari')(3)
'google-chrome'Chrome('google-chrome') 
'chrome'Chrome('chrome') 
'chromium'Chromium('chromium') 
'chromium-browser'Chromium('chromium-browser') 

备注:(1)“Konqueror” is the file manager for the KDE desktop environment for Unix, and only makes sense to use if KDE is running. Some way of reliably detecting KDE would be nice; the KDEDIR variable is not sufficient. Note also that the name “kfm” is used even when using the konqueror command with KDE 2 — the implementation selects the best strategy for running Konqueror.

          (2)仅用于WIndows系统

          (3)仅用于Mac OS X系统


使用默认浏览器打开URL:

import webbrowser

url = 'www.baidu.com'

webbrowser.open(url)


关闭浏览器:

import os

os.system('taskkill /F /IM MicrosoftEdge.exe')
浏览器的名字可以从任务管理器中获取。


       经测在windows(XP-32位,10-64位)系统下,open(url), open_new(url), open_new_tab(url)都是在新标签下打开网页,open()的new和autoraise参数都不起作用。


       可能是因为没有BROWSER这个环境变量,使用上面表格的浏览器类注册其他浏览器后,用get()方法并不能获取对应浏览器的对象。要使用其他浏览器可以使用以下方法:

import webbrowser

url = 'www.baidu.com'
chromePath = r'C:\Users\WJY\AppData\Local\Google\Chrome\Application\chrome.exe'
webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(chromePath))
b = webbrowser.get('chrome')
b.open(url)








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值