从零开始:使用DrissionPage实现网页自动化
DrissionPage是一个基于python的网页自动化工具。它既能控制浏览器,也能收发数据包,还能把两者合而为一。可兼顾浏览器自动化的便利性和 requests 的高效率。
它功能强大,内置无数人性化设计和便捷功能。语法简洁而优雅,代码量少,对新手友好。
其官方文档更是详细无比,是一个纯国产的web自动化软件,十分推荐
安装
为了使用DrissionPage,你需要安装以下依赖:
pip install -U DrissionPage
QuickStart
操作浏览器的基本逻辑如下:
创建浏览器对象,用于启动或接管浏览器
获取一个
Tab
对象使用
Tab
对象访问网址使用
Tab
对象获取标签页内需要的元素对象使用元素对象进行交互
除此以外,还能执行更为复杂的操作,如执行 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()获取的都是同一个对象。
获取标签页
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
soap的会员制餐厅!
喜欢就支持一下吧