webbrowser 浏览器操作库¶
webbrowser 模块提供了一个可以向用户展示 Web 文档的高级接口。在绝大多数情况下,使用本模块的 open() 函数即可。
脚本 webbrowser 可以用作命令行接口。它接受 URL 作为参数。它也接受如下可选参数:-n 如果可以,在新浏览器窗口打开 URL; -t 在浏览器新标签页(TAB)打开 URL。当然,这两个选项是互斥的,不可共存。用法示例︰
python -m webbrowser -t "http://www.python.org"
异常定义:
exception webbrowser.Error 浏览器控制引发的异常。
可用函数:¶
webbrowser.open(url, new=0, autoraise=True)¶
调用默认浏览器打开 url 。如果 new 参数为 0,将尽可能在同一个浏览器窗口打开 url。如果 new 参数为1,将使用新的浏览器窗口打开指定 url。如果 new 参数为 2,则使用新浏览器标签页(TAB)打开。如果 autoraise 是 True,则窗口会被调用(请注意,在许多窗口管理器下,不管此变量的设置如何)。
请注意,在某些平台上,尝试使用此函数打开文件名,可能会工作并启动操作系统的关联程序。
webbrowser.open_new(url)¶
如果可能,在默认浏览器的新窗口中打开 url,否则,在唯一的浏览器窗口中打开 url。
webbrowser.open_new_tab(url)¶
如果可能,在默认浏览器的新页面(“标签”)中打开 url,否则等效于 open_new()
webbrowser.get(using=None)¶
使用返回浏览器类型的控制器对象。如果使用为 None,则返回适用于调用方环境的默认浏览器的控制器。
webbrowser 预定义了多种浏览器类型。该表给出可以传递到 get() 函数的类型名称以及控制器类的对应实例化,这些都在本模块中定义。
类型名称 |
类名称 |
|---|---|
‘mozilla’ |
Mozilla(‘mozilla’) |
‘firefox’ |
Mozilla(‘mozilla’) |
‘netscape’ |
Mozilla(‘netscape’) |
‘galeon’ |
Galeon(‘galeon’) |
‘epiphany’ |
Galeon(‘epiphany’) |
‘skipstone’ |
BackgroundBrowser(‘skipstone’) |
‘kfmclient’ |
Konqueror() |
‘konqueror’ |
Konqueror() |
‘kfm’ |
Konqueror() |
‘mosaic’ |
BackgroundBrowser(‘mosaic’) |
‘opera’ |
Opera() |
‘grail’ |
Grail() |
‘links’ |
GenericBrowser(‘links’) |
‘elinks’ |
Elinks(‘elinks’) |
‘lynx’ |
GenericBrowser(‘lynx’) |
‘w3m’ |
GenericBrowser(‘w3m’) |
‘windows-default’ |
WindowsDefault |
‘macosx’ |
MacOSX(‘default’) |
‘safari’ |
MacOSX(‘safari’) |
‘google-chrome’ |
Chrome(‘google-chrome’) |
‘chrome’ |
Chrome(‘chrome’) |
‘chromium’ |
Chromium(‘chromium’) |
‘chromium-browser’ |
Chromium(‘chromium-browser’) |
webbrowser.register(name, constructor, instance=None)¶
注册浏览器类型名称。一旦注册了浏览器类型,get() 函数可以返回该浏览器类型的控制器。如果未提供实例或者 None,则会调用构造函数,而无需创建实例。如果提供实例,则构造函数将永远不被调用,并且可以是 None。
此入口点仅在计划设置 BROWSER 变量或调用 get() 时使用非空参数匹配处理程序。
这里有一些简单的例子:
url = 'http://docs.python.org/'
# Open URL in a new tab, if a browser window is already open.
webbrowser.open_new_tab(url)
# Open URL in new window, raising the window if possible.
webbrowser.open_new(url)
浏览器控制器对象¶
浏览器控制器提供了这些方法,它们并行了三个模块级的便利功能:
controller.open(url, new=0, autoraise=True)
使用此控制器处理的浏览器显示 url。如果 new 为 1,则尽可能打开新的浏览器窗口。如果 new 为 2,则尽可能打开新的浏览器页面(“选项卡”)。
controller.open_new(url)
如果可能,在此控制器处理的浏览器的新窗口中打开 url,否则在唯一的浏览器窗口中打开 url。别名 open_new()。
controller.open_new_tab(url)
如果可能,在此控制器处理的浏览器的新页面(“标签”)中打开 url,否则等效于 open_new()。