【爬虫】DrissionPage-1
官网地址:DrissionPage官网
小需求采集,我喜欢,我要学。
1 介绍
这是用python编写的爬虫自动化工具,将Selenium 和 Requests 的功能巧妙地整合在一起,提供了统一又简单的操作接口。开发者可以在浏览器模式(就像用 Selenium 那样)和无浏览器模式(类似用requests)之间自由切换。有了这个功能,不管是处理需要 JavaScript 渲染的动态网页内容,还是抓取简单的静态页面数据,DrissionPage 都能轻松搞定。
2 功能特点
1.无缝切换模式:动态渲染难不倒,静态效率高
2.简化的接口:降低Selenium 和Requests 这两个库学习陈本
3.灵活定制:支持用户自己设置请求头、代理、超时时间
4.内置常用功能:有很多常用的功能,比如等待元素加载、自动重试等
5.多标签页操作:就算标签页不是当前激活的状态,也不用切换就能操作
6.Listen监听功能:4.0版本后,每个页面对象都内置了监听器
3 三种页面对象
3.1 ChromiumPage
主要用来直接操作浏览器,适合那些需要和网页进行交互的情况,比如点击按钮、输入文
本、运行 JavaScript 脚本等。不过它的性能会受到浏览器的限制,运行速度可能没那么快,占用的内存也可能比较多。
3.2 WebPage
综合性的页面对象,它既能控制浏览器,又能收发数据包。
它有两种模式:
d 模式用来操作浏览器,功能很强大,但运行速度慢;
s 模式主要处理数据包,速度快,适合数据包比较简单的情况。
3.3 SessionPage
是个轻量级的页面对象,专门用来发送和接收数据包,不需要和网页进行交互。它处理大规模数据爬取的效率很高,是这方面的理想选择。
4 总结
这是一个很强大的爬虫工具,在实际使用的时候,我们可以根据具体需求选择合适的页面对象和模式,结合它丰富的功能和方便的操作方法,提高开发效率和代码质量。同时,也要注意遵守网站的爬虫规则,合理使用这个工具,别给网站造成不必要的麻烦。