Python爬虫:常用的爬虫工具汇总
按照网络爬虫的的思路:
页面下载 --> 页面解析 --> C数据存储
将工具按照以上分类说明,按照学习路线顺序给出参考文章
一、页面下载器
- requests(必学)
-
scrapy
- Python网络爬虫之scrapy框架
- scrapy学习
- Python爬虫:关于scrapy模块的请求头
- Python爬虫:scrapy框架请求参数meta、headers、cookies一探究竟
- Python爬虫:scrapy辅助功能实用函数
-
selenium+chrome + PhantomJS(抓取动态网页,不推荐)
- Splash(抓取动态网页,推荐)
总结: 对于下载器而言,python自带的urllib就不要花时间去学了,学了就忘,直接
requests
能满足大部分测试+抓取需求,进阶工程化
scrapy
,动态网页优先找
API接口
,如果有简单加密就破解,实在困难就使用
splash渲染
二、页面解析器
- BeautifulSoup(入门级)
-
pyquery (类似jQuery)
-
lxml
-
parsel
- scrapy的Selector (强烈推荐, 比较高级的封装,基于parsel)
总结: 其实解析器学习一个就够了,其他都不用学,很多培训会教你从上到下的学习,我不是很推荐,直接学习
scrapy的Selector
就行,简单、直接、高效
三、数据存储
- txt文本
- csv文件
- sqlite3 (python自带)
- MySQL
- MongoDB
总结: 数据存储没有什么可深究的,按照业务需求来就行,一般快速测试使用
MongoDB
,业务使用
MySQL
四、其他工具
-
execjs :执行js
Python爬虫:execjs在python中运行javascript代码
-
pyv8: 执行js
mac安装pyv8模块-JavaScript翻译成python
-
html5lib 1.
Python爬虫:scrapy利用html5lib解析不规范的html文本
五、关于xpath练习
本人的一个开源项目:PageParser https:// github.com/mouday/PageP arser 用于解析网页,最终实现6行代码写爬虫,可以贡献代码,顺便练习网页解析的能力
原文来自我的CSDN博客:
Python爬虫:常用的爬虫工具汇总 - 彭世瑜的博客 - CSDN博客