长亭百川云 - 文章详情

新一代国产神奇的自动化爬虫利器!-DrissionPagae

予墨致远

117

2024-08-08

点击上方蓝字,关注「予墨致远 」

推荐阅读:

    《国内首批基于Vue开源的问卷/表单收集工具!-TDuck》

    Web 自动化是网页测试\网页爬虫\自动填表等工作经常要用到的功能. 在 Web 自动化工具中最流行的也许就是 selenium, playwright 了, 但它们的非标准内核机制实在令人深恶痛绝, 其他同类工具例如 clicknium 也有很多新的无语问题, 以及接口爬取数据时踩不完的坑. 无论是b端还是c端还是接口的探索仿佛到了山穷水尽的地步,直到它的诞生—— DrissionPage !

DrissionPage简介

    DrissionPage 是一个基于 python 的网页自动化工具。它既能控制浏览器,也能收发数据包,还能把两者合而为一。可兼顾浏览器自动化的便利性和 requests 的高效率。它功能强大,内置无数人性化设计和便捷功能。它的语法简洁而优雅,代码量少,对新手友好。

    它将控制浏览器和收发请求两大功能合二为一,并提供了统一、简洁的接口。无论是需要渲染JavaScript生成的动态内容,还是简单的静态页面数据抓取,DrissionPage都能轻松应对。这个库的设计哲学是提高开发者在Web自动化任务中的工作效率,同时降低编码复杂度。

DrissionPage特性

强大的自研内核

本库采用全自研的内核,内置了无数实用功能,对常用功能作了整合和优化,对比 selenium,有以下优点:

  • 无 webdriver 特征

  • 无需为不同版本的浏览器下载不同的驱动

  • 运行速度更快

  • 可以跨 iframe 查找元素,无需切入切出

  • 把 iframe 看作普通元素,获取后可直接在其中查找元素,逻辑更清晰

  • 可以同时操作浏览器中的多个标签页,即使标签页为非激活状态,无需切换

  • 可以直接读取浏览器缓存来保存图片,无需用 GUI 点击另存

  • 可以对整个网页截图,包括视口外的部分(90以上版本浏览器支持)

  • 可处理非open状态的 shadow-root

亮点功能

除了以上优点,本库还内置了无数人性化设计。

  • 极简的语法规则。集成大量常用功能,代码更优雅

  • 定位元素更加容易,功能更强大稳定

  • 无处不在的等待和自动重试功能。使不稳定的网络变得易于控制,程序更稳定,编写更省心

  • 提供强大的下载工具。操作浏览器时也能享受快捷可靠的下载功能

  • 允许反复使用已经打开的浏览器。无需每次运行从头启动浏览器,调试超方便

  • 使用 ini 文件保存常用配置,自动调用,提供便捷的设置,远离繁杂的配置项

  • 内置 lxml 作为解析引擎,解析速度成几个数量级提升

  • 使用 POM 模式封装,可直接用于测试,便于扩展

  • 高度集成的便利功能,从每个细节中体现

  • 还有很多细节,这里不一一列举,欢迎实际使用中体验

应用场景

网页测试: 使用POM模式封装,便于进行网页功能测试和回归测试。

**数据抓取:**可以用于抓取网页数据,进行数据分析和信息收集。

自动化脚本编写: 适用于需要编写自动化脚本进行网页操作的场景,如自动化填写表单、自动化登录等。

网页内容管理: 适用于需要管理和操作多个网页标签页的场景,提高工作效率。

安装

总结

    DrissionPage不仅仅是一个工具,它代表了一种将传统自动化与底层网络操作相结合的创新思路,为Web开发和测试的未来开辟了新的道路。随着技术的不断发展,我们有理由相信,DrissionPage会在未来的Web技术栈中占据一席之地。立即加入DrissionPage的大家庭,体验高效、便捷的网页自动化工具吧!

**开源地址:**https://gitee.com/g1879/DrissionPage

热文推荐

国内首批基于Vue开源的问卷/表单收集工具!-TDuck

轻量级、跨域、分布式单点登录框架!-XXL-SSO

灵活,可靠和快速的分布式任务重试和分布式任务调度平台!-SnailJob

零侵入,零代码,接口文档一键生成框架!-doc-apis

高性能、高并发、低延迟、国产高性能通信框架!-Smart-Socket

优雅而强大!操作 Elasticsearch(ES) 如此简单!-Easy-Es

『黑科技』开源 IP 地址定位库,99.9%的准确率!-IP2Region

零侵入!简易、高效且开源!试试这款Api接口文档生成器!-SmartDoc

再见Swagger UI 国人开源了一款超好用的 API 文档生成框架,真香!-Knife4j

国内一个款不错的二级缓存框架!-J2Cache

实现RTSP/RTMP/HLS/HTTP协议的高性能流媒体服务框架,支持大并发连接请求!-ZLMediaKit

相关推荐
关注或联系我们
添加百川云公众号,移动管理云安全产品
咨询热线:
4000-327-707
百川公众号
百川公众号
百川云客服
百川云客服

Copyright ©2024 北京长亭科技有限公司
icon
京ICP备 2024055124号-2