Python Webbrowser 模块

17 Mar 2025 | 4 分钟阅读

在接下来的教程中,我们将学习 Python 编程语言中的 webbrowser 模块,并附带一些示例。

那么,让我们开始吧。

理解 Python webbrowser 模块

webbrowser 模块是 Python 编程语言中一个便捷的 Web 浏览器控制器。该模块提供了一个高级接口,可以根据 Web 显示文档。在大多数情况下,我们可以调用 webbrowser 模块中的 open() 函数来执行正确的操作。

在 Unix 操作系统上,X11 下会优先使用图形浏览器;但是,如果图形浏览器不可用或没有 X11 显示,则会使用文本模式浏览器。如果使用了文本模式浏览器,调用进程将一直阻塞,直到用户退出浏览器。

如果存在环境变量 BROWSER,它将被解释为 os.pathsep 分隔的浏览器列表,这些浏览器将在平台默认设置之前被尝试。当列表部分的值包含字符串 %s 时,它将被解释为字面上的浏览器命令行,并与 URL 参数替换 %s 一起使用;如果该部分不包含 %s,则将其解释为要启动的浏览器名称。

对于非 Unix 平台,或者当 Unix 上有远程浏览器可用时,控制进程不会等待用户完成浏览器操作;但是,它允许远程浏览器维护其窗口显示。如果 Unix 上没有远程浏览器可用,控制进程将启动一个新的浏览器并等待。

使用 webbrowser 模块

我们可以将 webbrowser 模块用作命令行界面 (CLI) 工具。该模块接受 URL 作为参数。它接受以下可选参数:

  1. -n: 此参数允许我们在可能的情况下在新浏览器窗口中打开 URL。
  2. -t: 此参数允许我们在新浏览器页面(“标签”)中打开 URL。

这些选项自然是互斥的。

其语法如下所示

语法

让我们来看以下示例,演示 webbrowser 模块作为 CLI 工具的用法。

示例 1

输出

Webbrowser module in Python

说明

以上语法已在终端或命令行 shell 中编写。该语法以 python 开头,后跟模块名称,即 webbrowser,指定参数 -t 和网站的 URL。

注意:webbrowser 模块是 Python 标准库的一部分。因此,无需安装单独的包即可使用它。

我们还可以利用 webbrowser 模块以平台独立的方式启动浏览器。

让我们来看以下示例演示相同的内容

示例 2

输出

Webbrowser module in Python

说明

在上面的代码片段中,我们导入了 webbrowser 模块。然后,我们使用了 webbrowser 模块的 open() 方法。open() 方法用于通过默认浏览器打开请求的页面。

为了更精细地控制页面的打开方式,请使用代码中提供的以下函数:

示例 3:在新浏览器窗口中打开页面

输出

Webbrowser module in Python

说明

在上面的代码片段中,我们导入了所需的模块。然后,我们使用了 open_new() 方法在新浏览器窗口中打开请求的 URL。

示例 4:在新浏览器标签页中打开页面

输出

Webbrowser module in Python

说明

在上面的代码片段中,我们导入了所需的模块,并使用了 open_new_tab() 方法在新浏览器标签页中打开页面。

要打开特定浏览器的页面,请使用 webbrowser.get() 函数来指定特定的浏览器。

示例 5

输出

Webbrowser module in Python

说明

在上面的代码片段中,我们导入了所需的模块。然后,我们定义了 Web 浏览器的路径,并使用 register() 方法将浏览器注册到模块中。然后,我们使用 get() 方法访问 Web 浏览器。之后,我们使用 open()open_new_tab() 方法打开请求的 URL。