《Python入门到精通》webbrowser模块详解,Python webbrowser标准库,Python浏览器控制工具

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

webbrowser模块详解

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

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

使用前需要「导入模块」

python 复制代码
import webbrowser

1、常用操作

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

python 复制代码
import webbrowser

webbrowser.open('www.baidu.com')

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

python 复制代码
import webbrowser

path = "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

语法

python 复制代码
webbrowser.open( url, new, autoraise )

参数

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

实例

python 复制代码
import webbrowser

webbrowser.open('www.baidu.com')

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

补充:

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

webbrowser.open_new() 新窗口打开

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

语法

php 复制代码
webbrowser.open_new( url )

参数

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

webbrowser.open_new_tab() 新页面打开

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

语法

php 复制代码
webbrowser.open_new_tab( url )

参数

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

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

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

语法

php 复制代码
webbrowser.get( name )

参数

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

实例

python 复制代码
import webbrowser

browser = webbrowser.get()
print(browser)

输出:

bash 复制代码
<webbrowser.WindowsDefault object at 0x0000023BFCD89EB0>

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

python 复制代码
import webbrowser

browser = webbrowser.get('chrome')

输出:

webbrowser.register() 注册浏览器

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

python 复制代码
import webbrowser

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

webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(path))
browser = webbrowser.get('chrome')
print(browser.name)

输出:

bash 复制代码
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

3、浏览器对象

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

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

实例

python 复制代码
import webbrowser

path = "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)

输出:

bash 复制代码
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
chrome.exe

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

  • open( url ):打开窗口
  • open_new( url ):新窗口打开
  • open_new_tab( url ):新页面(标签)打开
python 复制代码
import webbrowser

path = "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行代码实现模拟百度搜索

相关推荐
火山引擎开发者社区6 小时前
没有长期记忆,Agent 谈何持续进化?一图看懂火山 Mem0:解锁 Agent 持续学习与进化之路
人工智能
冬奇Lab9 小时前
Workflow 系列(06):安全——跨步骤注入传播与四层防御
人工智能·工作流引擎
冬奇Lab10 小时前
每日一个开源项目(第149篇):RAG-Anything - 把图片、表格、公式当成一等公民的多模态 RAG 框架
人工智能·开源
米小虾10 小时前
AI Agent 安全实战指南:当智能体开始"不听话",开发者该如何应对?
人工智能·安全·agent
IT_陈寒12 小时前
Vite的热更新突然不香了,排查三小时差点砸键盘
前端·人工智能·后端
用户83562907805113 小时前
Python 实现 PDF 文件加密与解密方法
后端·python
用户83562907805113 小时前
使用 Python 冻结与拆分 Excel 窗格教程
后端·python
阿里云大数据AI技术13 小时前
构建高转化海外电商搜索:阿里云OpenSearch行业算法版的全链路智能优化策略实战
人工智能·搜索引擎
Awu122714 小时前
⚡从零开发 Agent CLI(五)实现一个可治理、可扩展的工具系统
前端·人工智能·claude