– 方便的Web浏览器控制器 – Internet协议和支持(Python教程)(参考资料)
webbrowser
– 方便的Web浏览器控制器
源代码: Lib / webbrowser.py
webbrowser
模块提供了一个高级接口,允许显示Web-基于用户的文档。在大多数情况下,只需从这个模块中调用open()
函数就可以做正确的事情.
在Unix下,图形浏览器在X11下是首选,但如果是图形浏览器则会使用文本模式浏览器不可用或X11显示器是不可用的。如果使用文本模式浏览器,调用进程将阻塞,直到用户退出浏览器.
如果环境变量BROWSER
存在,则将其解释为os.pathsep
– 分隔在platformdefaults之前尝试的浏览器列表。当列表部分的值包含字符串%s
时,它将被解释为一个文字浏览器命令行,用于%s
的参数URLsubstituted;如果该部分不包含%s
,则简单地将其解释为要启动的浏览器的名称。[1]
对于非Unix平台,或者当Unix上有远程浏览器时,控制进程不会等待用户完成浏览器,而是允许远程浏览器在显示器上维护自己的窗口。如果在Unix上没有远程浏览器,控制过程将启动一个新的浏览器并等待
脚本 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,如果可能,将打开一个新的浏览器窗口。如果new为2,则会打开新的浏览器页面(“tab”)。如果autoraise是
True
,那么窗口会被提升(请注意,在许多窗口管理器下,无论这个变量如何都会出现这种情况).请注意,在某些平台上,尝试使用此功能打开文件名,可以工作并启动操作系统的相关程序。但是,既不支持也不便携.
webbrowser.
open_new
(url)-
在默认浏览器的新窗口中打开url,如果可能,否则打开url在唯一的浏览器窗口中
webbrowser.
open_new_tab
(url)-
在新的页面(“标签”)中打开url默认浏览器,如果可能的话,等同于
open_new()
.
webbrowser.
register
(name, constructor, instance=None, *, preferred=False)-
注册浏览器输入name。一旦浏览器类型被注册,
get()
function可以返回该浏览器类型的控制器。如果没有提供instance,或者None
, constructor将在没有参数的情况下被调用以在需要时创建实例。如果提供instance,则constructor永远不会被调用,可能是None
.设置preferred到
True
使这个浏览器成为首选结果论坛get()
无争话地打电话。否则,如果您打算设置BROWSER
变量或调用get()
并使用与处理程序名称相匹配的非空参数,则此入口点仅用于解释.更改版本3.7:preferred添加了关键字参数.
预定义了多种浏览器类型。此表给出了可以传递给get()
函数的类型名称以及控制器类的相应实例,这些都在此模块中定义.
Type Name | Class Name | 注 |
---|---|---|
"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") |
注:
- “Konqueror”是Unix的KDE桌面环境的文件管理器,只有在KDE运行时才有意义。一些可靠地检测KDE的方法会很好;
KDEDIR
变量是不够的。另请注意,即使在使用带有KDE2的 konqueror 命令时,也会使用名称“kfm” – 该实现选择运行Konqueror的最佳策略. - 仅适用于Windows平台.
- 仅适用于Mac OS X平台.
3.3版本中的新版本:已添加对Chrome / Chromium的支持.
这是一些简单的示例:
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)
评论被关闭。