「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:小白零基础《Python入门到精通》

webbrowser模块详解

  • 1、常用操作
  • 2、函数大全
    • webbrowser.open() 打开浏览器
    • webbrowser.open_new() 新窗口打开
    • webbrowser.open_new_tab() 新页面打开
    • webbrowser.get() 获取浏览器对象
    • webbrowser.register() 注册浏览器
  • 3、浏览器对象
  • 4、实战演示

webbrowser 是Python的内置库,提供了访问Web浏览器的接口

使用前需要「导入模块」

import webbrowser

1、常用操作

1)使用「默认浏览器」打开指定url

import webbrowserwebbrowser.open('www.baidu.com')

2)使用「指定浏览器」(比如chrome)打开指定url

import webbrowserpath = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(path))browser = webbrowser.get('chrome')browser.open('www.baidu.com')

2、函数大全

webbrowser 模块提供了一些「操作浏览器」的函数

webbrowser.open() 打开浏览器

使用「默认浏览器」打开指定的url

语法

webbrowser.open( url, new, autoraise )

参数

  • url :(必选)需要打开的url
  • new :(可选)0同一个窗口打开;1新窗口打开;默认值是0。
  • autoraise :(可选)True窗口前置;False不前置;默认值是True。

实例

import webbrowserwebbrowser.open('www.baidu.com')

电脑会「打开」默认浏览器并访问url

补充:

  • new 参数只是尽可能在新窗口打开,很多情况下还是在同窗口打开
  • open() 函数有时能够「打开文件」,但这种方式是不支持的,应该避免

webbrowser.open_new() 新窗口打开

尽可能在默认浏览器的「新窗口」打开url,否则还是在原窗口打开。

语法

webbrowser.open_new( url )

参数

  • url :(必选)需要打开的url

webbrowser.open_new_tab() 新页面打开

尽可能在默认浏览器的「新页面」(标签)打开url,否则就等同于 open_new()

语法

webbrowser.open_new_tab( url )

参数

  • url :(必选)需要打开的url

webbrowser.get() 获取浏览器对象

获取浏览器的「控制器对象」,如果不给参数,就返回默认浏览器的控制器对象。

语法

webbrowser.get( name )

参数

  • name :(可选)需要获取对象的浏览器类型

实例

import webbrowserbrowser = webbrowser.get()print(browser)

输出:

<webbrowser.WindowsDefault object at 0x0000023BFCD89EB0>

直接打开会报错 webbrowser.Error: could not locate runnable browser,需要先「注册」

import webbrowserbrowser = webbrowser.get('chrome')

输出:

webbrowser.register() 注册浏览器

「注册」后的浏览器,才能被 get() 获取。

import webbrowserpath = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(path))browser = webbrowser.get('chrome')print(browser.name)

输出:

C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

3、浏览器对象

get() 获取的浏览器控制器对象,有一些「属性」「函数」

  • browser.name :浏览器控制器路径
  • browser.basename :浏览器控制器名字

实例

import webbrowserpath = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(path))browser = webbrowser.get('chrome')print(browser.name)print(browser.basename)

输出:

C:\Program Files (x86)\Google\Chrome\Application\chrome.exechrome.exe

浏览器控制器对象也可以用 webbrowser 模块的函数,用法相同。

  • open( url ):打开窗口
  • open_new( url ):新窗口打开
  • open_new_tab( url ):新页面(标签)打开
import webbrowserpath = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(path))browser = webbrowser.get('chrome')browser.open('www.baidu.com')browser.open_new('www.baidu.com')browser.open_new_tab('www.baidu.com')

4、实战演示

Python10行代码实现模拟百度搜索