有朋友在群里和大家讨论,问的最多的问题就是,python 爬虫学到什么程度可以去找工作了,关于这点,和大家分享下我的理解。
确立目标、了解需求
首先我们要先定位自己的目标,当然我们先以爬虫工程师来做个说明。
去招聘网上看看需求都有哪些,直接做个拉勾网爬虫(有需要的私信)出结果了:
仔细看看,我们可以得出以下几点:
1、 python 不是唯一可以做爬虫的,很多语言都可以,尤其是 java,同时掌握它们和拥有相关开发经验是很重要的加分项
2、 大部分的公司都要求爬虫技术有一定的深度和广度,深度就是类似反反爬、加密破解、验证登录等等技术;广度就是分布式、云计算等等,这都是加分项
3、 爬虫,不是抓取到数据就完事了,如果有数据抽取、清洗、消重等方面经验,也是加分项
4、 一般公司都会有自己的爬虫系统,而新进员工除了跟着学习以外最常做的工作就是维护爬虫系统,这点要有了解
5、 ***一个加分项就是前端知识,尤其是常用的 js、ajax、html/xhtml、css 等相关技术为***,其中 js 代码的熟悉是很重要的
6、 补充一条,随着手持设备的市场占比越来越高,app 的数据采集、抓包工具的熟练使用会越来越重要
以上内容,不要求全部掌握,但是掌握的越多,那么你的重要性就越高
如何提高自己
网上教程很多,就 python 而言,只会 requests 明显是不够的,起码 scrapy 和pyspider 这俩框架要掌握,scrapy_redis 原理要理解
多做全站爬虫,比如抓取一个小说网站, 能抓一本小说是基本功,你要想办法分类别把整站小说全部抓取下来,存到数据库,甚至自己建站,完全用你的方式将对方的网站 copy 下来!这个过程需要注意的是如何去重,Mongo 可以、redis 也可以。
实战项目经验
这个是在面试中经常会问到
1、 你抓过哪些网站?
2、 日均采集量有多少?
3、 遇到哪些问题,怎么解决的?
那么,怎么找项目呢?Github 你需要多去看看,项目多到超出你的想象!
如何判断能力是否足够
很简单,去网上找一个爬虫的外包方案,自己去尝试做一下!当然你要能卖出去,那是***了。实践是硬道理!
以上仅为个人看法,若有不足之处请指教,希望可以帮助到大家!