DrissionPage是个Python网页自动化工具,能控制浏览器也能收发数据包,功能强大还对新手友好,语法简洁代码少,内置很多便捷功能,是个挺不错的自动化工具。
【一、这个软件能做什么?】
DrissionPage是个Python网页自动化工具。它能控制浏览器,也能收发数据包,还能把两者结合起来用。主要功能有:
1. 控制浏览器自动化操作
2. 发送和接收网络数据包
3. 结合浏览器和数据包操作
技术优势是语法简单,代码量少,新手上手快。内置了很多便利功能,比如自动重试、异常处理等。
目标用户是需要做网页自动化的人,比如web3撸毛、爬虫开发、自动化测试等。
【二、都是谁在用这个app?】
DrissionPage主要用户群:
1. 爬虫开发者
2. 自动化测试工程师
3. 数据分析师
4. web3空投撸毛网页自动化操作
使用门槛:
– 需要有Python基础
– 了解一些网页知识和HTML结构
– 会用Chrome开发者工具查看网页元素
适合的场景:
– 网页数据采集
– 网站功能自动化测试
– 模拟用户操作自动化
【三、这个app有哪些有亮点的特色功能和服务?】
DrissionPage主要特色功能:
1. 浏览器控制
– 支持多种浏览器,如Chrome、Edge等
– 可以模拟鼠标点击、键盘输入等操作
– 支持执行JS脚本
2. 数据包收发
– 可以直接发送GET、POST等请求
– 支持设置请求头、cookies等
– 可以解析响应内容
3. 两者结合
– 可以在浏览器中发送请求
– 可以把请求结果加载到浏览器中
4. 便捷功能
– 自动重试机制
– 智能等待页面加载
– 异常处理
5. 简洁语法
– 链式调用
– 代码量少
– 对新手友好
【四、如何使用该app提供的工具和服务?】
【1、如何安装这个app?】
安装DrissionPage步骤:
1. 安装Python(3.6以上版本)
2. 打开命令行,输入:
pip install DrissionPage
3. 安装浏览器驱动
– Chrome用户下载chromedriver
– Edge用户下载msedgedriver
把驱动放到Python安装目录或系统PATH中
4. 验证安装
打开Python,输入:
from DrissionPage import ChromiumPage
如果没报错就安装成功了
【2、举例说明app的基本使用方法】
用DrissionPage抓取百度搜索结果示例:
“`python
from DrissionPage import ChromiumPage
# 创建页面对象
page = ChromiumPage()
# 访问百度
page.get(‘https://www.baidu.com’)
# 输入搜索词
page.ele(‘#kw’).input(‘DrissionPage’)
# 点击搜索按钮
page.ele(‘#su’).click()
# 等待结果加载
page.wait.load_complete()
# 获取搜索结果
results = page.eles(‘.result h3 a’)
# 打印结果标题
for result in results:
print(result.text)
# 关闭浏览器
page.quit()
“`
【3、最近升级或者增加了哪些新的功能?】
DrissionPage 4.x版本新增功能:
1. 异步操作支持
2. 页面截图功能
3. PDF导出功能
4. 新增了一些选择器
5. 优化了部分API,使用更简单
【3、怎么用Drissionpage操控指纹浏览器?】
以adspower为例:
1、用ads的API接口打开浏览器获得debug端口
2、用端口号接管浏览器
3、开始自动化
其他浏览器原理都差不多,Morelogin加了安全机制稍微复杂一些。
源码:https://github.com/coolaroc/dp-browser
![DrissionPage免费撸毛神器:Python网页自动化工具](https://ytm.app/wp-content/uploads/2024/07/1721373193-drivensession071901.png)
【五、这个app收费吗?有哪些收费的套餐或者功能?】
DrissionPage是完全免费开源的Python库,没有任何收费。
所有功能都可以免费使用,不需要付费。
也没有什么会员制或者高级功能。
【六、网友对这个app提出了哪些常见问题】
1. Q:如何处理网页加载慢的问题?
A:可以使用page.wait设置等待时间,或者用显式等待某个元素出现
2. Q:怎么处理弹窗?
A:可以用page.get_tab()获取新标签页,或者用page.ele()定位弹窗元素进行操作
3. Q:如何在无头模式运行?
A:创建页面时设置无头模式:ChromiumPage(chromium_options=’–headless’)
4. Q:如何保存和加载cookies?
A:用page.get_cookies()获取,page.set_cookies()设置
5. Q:出现ElementNotFoundError怎么办?
A:检查选择器是否正确,或者增加等待时间
【七、用户对这个app的评价怎么样?】
1. “一直以来用的都是Python+Selenium实现自动化。偶然接触到了DrissionPage,实际用过之后写脚本速度提高了100%,执行效率提高了50%。代码简洁,功能强大,Selenium代码迁移也很丝滑。之后我大概率会把之前的成品脚本全转过去”
2. “内置的便捷功能很实用,不用自己写那么多代码了”
3. “文档很详细,新手也能快速掌握”
4. “结合了selenium和requests的优点,很好用”
5. “有时会遇到兼容性问题,希望后续能优化”
【八、与同类型app对比有哪些亮点和不足?】
对比Selenium、Requests和Playwright:
亮点:
1. 语法更简洁,代码量少
2. 结合了浏览器控制和数据包收发
3. 内置了很多便捷功能
4. 对新手更友好
不足:
1. 功能没有Selenium那么全面
2. 性能可能不如Requests
3. 社区不如其他几个活跃