DrissionPage是一个基于python的网页自动化工具。它既能控制浏览器,也能收发数据包,还能把两者合而为一。可兼顾浏览器自动化的便利性和 requests 的高效率。

它功能强大,内置无数人性化设计和便捷功能。语法简洁而优雅,代码量少,对新手友好。

其官方文档更是详细无比,是一个纯国产的web自动化软件,十分推荐

官方文档: https://www.drissionpage.cn/

安装

为了使用DrissionPage,你需要安装以下依赖:

pip install -U DrissionPage

QuickStart

操作浏览器的基本逻辑如下:

  1. 创建浏览器对象,用于启动或接管浏览器

  2. 获取一个Tab对象

  3. 使用Tab对象访问网址

  4. 使用Tab对象获取标签页内需要的元素对象

  5. 使用元素对象进行交互

除此以外,还能执行更为复杂的操作,如执行 js 代码、监听网络数据、下载文件等。

以下是一个快速的示例,可以轻松入门DrissionPage

# 导入
from DrissionPage import Chromium
​
# 连接浏览器
browser = Chromium()
# 获取标签页对象
tab = browser.latest_tab
# 访问网页
tab.get('https://www.baidu.com')
# 获取文本框元素对象
ele = tab.ele('#kw')
# 向文本框元素对象输入文本
ele.input('DrissionPage')
# 点击按钮,上两行的代码可以缩写成这样
tab('#su').click()
# 获取所有<h3>元素
links = tab.eles('tag:h3')
# 遍历并打印结果
for link in links:
    print(link.text)

连接浏览器

为了让DrssionPage连接浏览器,需要创建一个Chromium对象。

根据不同的配置,可以接管已打开的浏览器,也可以启动新的浏览器。

Chromium对象用于连接和管理浏览器。标签页的开关和获取、整体运行参数配置、浏览器信息获取等都由它进行。

from DrissionPage import Chromium
​
# 连接浏览器
browser = Chromium()

每个浏览器只能有一个Chromium对象(同一进程中)。对同一个浏览器重复使用Chromium()获取的都是同一个对象。

获取标签页

文章作者: Vsoapmac
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 soap的会员制餐厅
自动化测试 第三方库 个人分享
喜欢就支持一下吧