不知不觉,十月份已经过去了,传说中的金九银十招聘季也应该随之结束了,不知道有换工作打算的朋友有没有找到理想的下家,反正我没有
警告:本教程仅用作学习交流,请勿用作商业盈利,违者后果自负!如本文有侵犯任何组织集团公司的隐私或利益,请告知联系删除!!!
于是乎,我再次转战 Boss 直聘,我就是想看看,到底什么工种比较好找工作呢。当然了,这里工作种类实在是太多了,我就挑选出 Python,Java,数据分析和产品经理这四种岗位来做下简单的分析。
我在前面就写过一篇获取 Boss 数据的文章,可以戳这里查看(查看)。但是后面有人反映说 Cookies 过期时间太快了,我自己尝试之后也确实如此,那么这种情况下,使用 selenium 就是更好的选择了。
由于网站页面结构并没有变化,所以以前的解析网页的代码基本可以复用,只不过从 bs4 解析变为 webdriver 解析
def get_jobs(page, city, job_type): Chrome_driver = webdriver.Chrome(options=options) c_code = city_code[city] for i in range(1, page + 1): try: print("正在抓取第 %s 页数据" % i) uri = '/%s/?query=%s&page=%s' % (c_code, job_type, i) Chrome_driver.get(config.url + uri) ... 复制代码
同时这里要注意的是,Boss 网站会检测浏览器是否在受 selenium 控制,所以我们还要增加一条配置,来绕过该检测
from selenium.webdriver import ChromeOptions options = ChromeOptions() options.add_experimental_option('excludeSwitches', ['enable-automation']) 复制代码
之后就可以运行程序等待完成了
if __name__ == '__main__': for i in city_code.keys(): get_jobs(10, i, 'python') get_jobs(10, i, 'java') get_jobs(10, i, '数据分析') get_jobs(10, i, '产品经理') 复制代码
每种岗位我只爬取了前10页,毕竟我们翻看工作的时候,也不会翻看到10页以后吧
而对于城市,我则选择了如下的城市
city_code = { 'beijing': 'c101010100', 'shanghai': 'c101020100', 'guangzhou': 'c101280100', 'shenzhen': 'c101280600', 'hangzhou': 'c101210100', 'xian': 'c101110100', 'wuhan': 'c101200100', 'chengdu': 'c101270100', 'nanjing': 'c101190100' } 复制代码
首先我们先来看下不同城市间,同种工作的招聘薪资对比,正所谓没有对比,就没有伤害
图中的薪资来源:选择岗位中招聘薪资区间最多的作为普遍薪资,如对于西安的 Java 岗位,10-15K 是最多的薪资区间,那么西安 Java 岗位在图中的数值即为(10+15)/2 + 32/10 = 15.7
从图中的数据可以看出,北京、上海、深圳和杭州的普遍薪资是高其他城市一等的,那么应该是第一阶梯,所谓的“北上广深”可能即将成为过去式了。
同时还能看出,虽然近些年 Python 混的风生水起,大红大紫,但是薪资相对来说却不是很高,所有的城市都没有超过30K,相比杭州的 Java,深圳的数据分析和北京的产品经理来说,Python 还是太弱势了。
而从整体来看,产品经理绝对是总体薪资水平最高的岗位,无论程序猿们服不服气,你们的战友(天敌)就是会压你一头。
下面再来看看不同城市对于不同岗位的需求程度,我这里默认需求程度高,那么普遍薪资也高。
能够看出,对于 Python 来说,北京、上海和深圳可能是比较好发展的城市,而南京竟然垫底,这让我情何以堪啊。
上海和杭州是独一档的存在,拥有阿里巴巴的杭州,招聘高级 Java 可不是闹的哦。而其他城市则分布的较为平均,看来老牌语言的威力就体现在这里了,哪个公司敢说自己一点 Java 都不用呢?
对于数分岗位,深圳一马当先,我想这会不会和腾讯有着莫大的关系呢,毕竟分析好自己和别人的数据,才更好。。。
而北京也是独占第二档,看来近来大火的数据分析岗位,还是在大城市,大厂中更加有发展前途哦。
能够看出,北京应该是产品经理的天堂,这也非常符合北京这座城市的身份地位--引领中国互联网的潮流。
而深圳、上海、杭州和南京对于产品经理来说也会有不错的发展,毕竟这几座城市,是多少年轻人梦开始的地方!
最后再来看看总体岗位需求分布情况
可以清晰的发现,当前的岗位需求分布还是分为三大块,北京地区,长三角地区和广州-深圳地区。
无论是当年的改革开放还是如今的互联网热潮,东南沿海地区一直都走在前列,大型企业入驻,人才涌入,大大推动了地区的发展,从而也水涨船高,无论是薪资还是需求量,都遥遥领先于其他地区。
而对于中部城市西安、武汉和成都等,不是它们不够好,而是先天的差距,需要后天更多的资源倾斜才能弥补。
对于 Python 来说,招聘居多的是全栈工程师和开发工程师。我理解的两者的区别应该是全栈工程师需要知道的技术要更多一些,比如前端、数据库、网络等等。当然这并不代表纯的开发工程师就可以不懂这些技能,毕竟如今竞争压力这么大,不是能够承受996就能找到工作的时代了。Java 来说,比较多的是高级工程师和架构师,这都是比较高级的岗位了,对于 Java 这种生态如此庞大,应用如此广泛的语言来说,成为架构师之路,还是漫长且阻啊!数据分析,能够看到有招聘偏于业务的“数据分析-DS快捷拼车”,也有招聘偏于技术的资深数据分析师,总之对于这个岗位,这两大方向应该是两种截然不同的晋升途径,而对于个人的要求也不尽相同。对于产品经理这个岗位来说,大多都是基于业务来招聘的,比如 CRM 产品经理,社区产品经理,AI 产品经理等等。看来在社会分工越来越细致的今天,产品经理的分工率先体现了出来,那么不同领域的产品经理,会容易跳槽嘛?