type
status
date
slug
summary
tags
category
icon
password
selenium的新一代替代品---DrissionPage
新一代自动化利器

✨️ 概述
DrissionPage 是一个基于 Python
的强大网页自动化工具,融合了浏览器控制与数据包收发的功能。它不仅能提供浏览器自动化的便利性,还能实现 requests
的高效性,将两者完美结合。该工具功能丰富,内置众多人性化设计和便捷功能,语法简洁优雅,代码量少,非常适合新手使用。
最新版本:3.2.26
支持系统:Windows、Linux、Mac
python 版本:3.6 及以上
支持应用:Chromium 内核浏览器(如 Chrome、Edge),electron 应用
背景
使用 requests 进行数据采集时,对于需要登录的网站,通常需要分析数据包、JavaScript 源码,并构造复杂的请求。此外,还需处理验证码、JS 混淆和签名参数等反爬手段,这使得门槛较高,开发效率较低。尽管使用浏览器可以绕过许多这些问题,但浏览器的运行效率通常不高。
DrissionPage 的设计初衷就是将浏览器和 requests 的优势结合起来,实现“写得快”和“跑得快”。这个库允许用户在不同需求下切换相应模式,并提供人性化的使用方法,提高开发和运行效率。除了融合两者的优点,本库还封装了常用功能,以网页为单位提供简便的操作和语句,减少用户需要关注的细节,使其能够专注于功能实现。通过简单的方法实现强大的功能,让代码更加优雅。
以前的版本是基于对 selenium 的重新封装实现的。从 3.0 版本开始,作者重新开发了底层代码,摆脱了对 selenium 的依赖,增强了功能,并提升了运行效率。
理念
简洁!易用 !方便!
☀️ 特性
作者经过长期实践,踩过无数坑,总结出的经验全写到这个库里了。
强大的自研内核
本库采用全自研的内核,集成了大量实用功能,并对常用功能进行了整合和优化。与 selenium 相比,具有以下优点:
- 没有 webdriver 特征。
- 无需为不同版本的浏览器下载不同的驱动程序。
- 运行速度更快。
- 可以跨 iframe 查找元素,无需反复切换。
- 将 iframe 视作普通元素,获取后可以直接在其中查找元素,逻辑更清晰。
- 可以同时操作浏览器中的多个标签页,即使标签页为非激活状态,无需切换。
- 可以直接读取浏览器缓存保存图片,无需 GUI 点击另存。
- 能对整个网页截图,包括视口之外的部分(支持 90 版本以上的浏览器)。
- 可以处理非 open 状态的 shadow-root。
亮点功能
除了上述优点外,本库还拥有众多贴心设计。
- 极简的语法规则,集成大量常用功能,使代码更加优雅。
- 元素定位更加简单,功能更加强大且稳定。
- 无处不在的等待和自动重试功能,使网络不稳定性变得易于控制,程序更稳定,开发更加省心。
- 强大的下载工具,即使在操作浏览器时也能享受快捷可靠的下载体验。
- 允许反复使用已打开的浏览器,无需每次运行从头启动浏览器,极大方便调试。
- 使用 ini 文件保存常用配置,自动调用,提供便捷设置,避免繁琐的配置项。
- 内置 lxml 解析引擎,解析速度大幅提升。
- 使用 POM 模式封装,可直接用于测试,便于扩展。
- 高度集成的便利功能,从每个细节体现用户友好。
简单的示例举例
✅️️安装这两个库。
✅️️ DrissionPage 基本用法。
✅️️ Recorder 基本用法。
✅️️ 结合 DrissionPage 和 Recorder 进行数据采集。
应用实例 : 采集猫眼电影 TOP100 榜
这个示例演示用浏览器采集数据。
✅️️ 采集目标 目标网址:https://www.maoyan.com/board/4
采集目标:排名、电影名称、演员、上映时间、分数
✅️️ 编码思路 按F12,可以看到每个电影信息都包含在
- 元素中,因此可批量获取
- 元素,遍历它们并再从其中获取每个电影的信息。
✅️️ 示例代码 以下代码可直接运行。
须要注意的是,这里用到记录器对象,详见DataRecorder。
✅️️ 结果 程序生成一个结果文件 data.csv,内容如下:
1,我不是药神,"主演:徐峥,周一围,
王传君
",上映时间:2018-07-05,9.6
2,肖申克的救赎,"主演:蒂姆·罗宾斯,摩根·
弗里曼
,
鲍勃·冈顿
",上映时间:1994-09-10(加拿大),9.5
3,海上钢琴师,"主演:
蒂姆·罗斯
,比尔·努恩 ,克兰伦斯·威廉姆斯三世",上映时间:2019-11-15,9.3
4,绿皮书,"主演:
维果·莫腾森
,马赫沙拉·阿里,琳达·卡德里尼",上映时间:2019-03-01,9.5
5,霸王别姬,"主演:张国荣,
张丰毅
,巩俐",上映时间:1993-07-26,9.4
下面省略。。。

- 作者:猿榜编程
- 链接:https://www.yuanbang.lol//article/166202ba-3e23-801b-95ca-eee12a16c81a
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。