根据崔大神的文章总结的爬虫水平对照表
一、初级水平
- Python 【语言基础】
- requests 【请求相关】
- lxml【解析相关】
- XPath 【解析相关】
- BeautifulSoup【解析相关】
- PyQuery 【解析相关】
- MySQL 【数据库】
- MongoDB【数据库】
- Elasticsearch【我没用过这个,不清楚用到他什么特性】
- Kafka【消息队列相关】
二、中级水平 --- Ajax ---多线程 ---多进程等
- Ajax【能通过Ajax接口获取数据】
- Puppeteer【基于JS的爬虫框架,可直接执行JS】
- Pyppeteer【基于Puppeteer开发的python版本,需要python异步知识】
- Selenium【常见的自动化工具,支持多语言】
- Splash 【我没用过】 英文资料
- 多进程【python多任务基础】
- 多线程【python多任务基础】
- 协程【python多任务基础】
- fiddler 【抓包工具】
- mitmproxy【中间人代理工具】
- appium【自动化工具】
- adb【安卓adb工具】
- Charles【抓包工具】
三、高级水平
- RabbitMQ【消息队列相关】
- Celery【消息队列相关】
- Kafka【消息队列相关】
- Redis【缓存数据库 -----》 其实mongodb也可以充当这个角色】
- Scrapy-Redis【scrapy的redis组件】
- Scrapy-Redis-BloomFilter 【scrapy的布隆过滤器】
- Scrapy-Cluster 【我没用过,分布式解决方案】中文资料 英文资料
- 验证码破解
- IP代理池
- 用户行为管理
- cookies池 崔神建的代理池开源代码地址
- token池
- sign
- 账号管理
四、更高一级水平
- JS逆向【分析目标站点JS加密逻辑】
- APP逆向【xposed可在不改变原应用代码基础上植入自己的代码】
五、神级水平
- 智能化爬虫【我只能仰望】
六、加分项 -- 运维
- Kubernetes
- Prometheus
- Grafana
崔庆才 ---- 崔神原文如下
当今大数据的时代,网络爬虫已经成为了获取数据的一个重要手段。
但要学习好爬虫并没有那么简单。首先知识点和方向实在是太多了,它关系到了计算机网络、编程基础、前端开发、后端开发、App 开发与逆向、网络安全、数据库、运维、机器学习、数据分析等各个方向的内容,它像一张大网一样把现在一些主流的技术栈都连接在了一起。正因为涵盖的方向多,因此学习的东西也非常零散和杂乱,很多初学者搞不清楚究竟要学习哪些知识,学习过程中遇到反爬也不知道用什么方法来解决,本篇我们来做一些归纳和总结。
初学爬虫
一些最基本的网站,往往不带任何