项目介绍
DrissionPage 是一个基于 Python 的网页自动化工具,Gitee GVP 项目。它既能控制浏览器,也能收发数据包,还能把两者合而为一。可兼顾浏览器自动化的便利性和 requests 的高效率。功能强大,内置无数人性化设计和便捷功能。语法简洁而优雅,代码量少,对新手友好。
项目特点
- 跨平台支持:Windows、Linux、Mac
- Python版本:3.6 及以上
- 浏览器支持:Chromium 内核浏览器(如 Chrome 和 Edge),electron 应用
核心优势
对比 Selenium 的优点
- 不基于 webdriver
- 无需为不同版本的浏览器下载不同的驱动
- 运行速度更快
- 可以跨 iframe 查找元素,无需切入切出
- 把 iframe 看作普通元素,逻辑更清晰
- 可同时操作多个标签页,无需切换
- 可以直接读取浏览器缓存保存图片,无需用 GUI 点击另存
- 可以对整个网页截图,包括视口外的部分
- 可处理非 open 状态的 shadow-root
亮点功能
- 极简的定位语法,查找元素更加容易
- 集成大量常用功能,代码更优雅,功能强大稳定
- 无处不在的等待和自动重试,使不稳定的网络变得易于控制
- 提供强大的下载工具,操作浏览器时也能享受快捷可靠的下载功能
- 允许反复使用已经打开的浏览器,无需每次运行从头启动浏览器
- 使用 ini 文件保存常用配置,自动调用,提供便捷的设置
- 内置 lxml 作为解析引擎,解析速度成几个数量级提升
- 使用 POM 模式封装,可直接用于测试,便于扩展
安装使用
pip install DrissionPage
快速示例
from DrissionPage import ChromiumPage
# 创建页面对象
page = ChromiumPage()
# 访问网页
page.get('https://www.example.com')
# 查找元素并操作
element = page.ele('text:登录')
element.click()
项目信息
- 开源协议:非商业使用免费
- 开发语言:Python
- Star 数:5.4K+
- Fork 数:1.2K+
- 官方文档:https://DrissionPage.cn
- 项目地址:https://gitee.com/g1879/DrissionPage
文章来源:Gitee 开源探索 - https://gitee.com/explore
发表评论 取消回复