# 如何使用爬虫分析 Python 岗位招聘情况
Life is short, you need Python。Python 是一门很优雅的语言,用着挺舒服的。所以就在想,现在的 Python 开发的岗位招聘,公司们需要什么样的人才?要有什么样的技能?以及对应的市场如何?
所以,我又有了一个大胆的想法。
爬取了[前程无忧](http://jobs.51job.com/)上 Python 关键字的招聘岗位,地区锁定在中国四个一线城市,北上深广。选取 top650 条招聘岗位带 Python 关键字的招聘信息进行数据分析。
## 岗位分布
650 条招聘信息中,各城市岗位数量分布如下图。
![](https://github.com/chenjiandongx/51job/blob/master/images/job_1.png)
上海 228 是最多的,北京 202 排在第二,两者都超过了 200,深圳和广州就和上海北京差得有点多了,分别只有 115 和 91,另外还有 14 个是异地招聘的。当然数据只是针对这前 650 条数据而言!不过总体上也差不多,后面的招聘信息都只是在岗位要求里提到 Python 而已,并没有专门招聘 Python 开发者。
## 职位要求
提取了所有的职位要求,进行分词统计,清理没意义的词,统一英文字符,如 Python 和 python 不区分大小。
提取前 50 个中文词汇以及出现次数
```
开发,2100
熟悉,1842
经验,1268
工程师,897
工作,895
职位,842
能力,806
优先,755
描述,753
软件,682
技术,677
负责,660
职能,658
类别,654
设计,562
系统,559
要求,549
相关,542
使用,529
良好,521
以上,502
框架,492
数据库,491
项目,429
团队,424
了解,398
数据,387
产品,352
熟练,349
精通,331
公司,321
任职,313
进行,311
编程,309
平台,306
学习,301
语言,300
具备,300
岗位职责,296
沟通,292
代码,284
互联网,280
具有,269
参与,263
分析,262
维护,253
优化,239
编写,235
爬虫,233
学历,230
文档,226
合作,219
软件开发,218
高级,213
常用,212
测试,205
需求,205
完成,200
```
这个词频排序挺有趣的,要来好好研究一下
(开发,2100)(熟悉,1842)(经验,1268),这是最多的三个。熟悉其实也就是相当于有经验了。表示程度上的词也是频频出现(熟悉,1842)(良好,521)(熟练,349)(精通,331)。其实我一直不太理解精通这个词,什么程度上的熟练才能称为精通。个人感觉应该对精通这个词怀有敬畏之心。
(团队,424)(参与,263)(合作,219)(沟通,292)(协作,108),这个更多的是强调团队开发,参与到团队开发以及合作的重要性,毕竟现在的项目的规模基本上已经大到不是一个人就能完成的。顺便提一下 Git 出现了刚好 100 次。
(分析,262)(维护,253)(优化,239),这三个词应该就是对个人能力的综合描述了,具有分析问题的能力,维护和优化项目的能力,一个成熟的项目后期的维护和优化是很重要的。
看看没排进 top50 的其他词汇
(专业,199)(架构,173)(研发,170),这几个词看起来就厉害了,毕竟架构这个不是随便就能搞搞。
(爬虫,233)(抓取,140)(爬取,28)(正则表达式,31),刚需刚需!!!
(独立,153)(责任心,123)(强烈,69)(踏实,26)(抗压,17)(认真,26)(热爱,53)(意识,78)(逻辑,58)这应该都是所要求的品质和能力了吧。
(数据结构,106)(算法,198)(设计模式,33)回忆起了被《数据结构》和《算法导论》统治的恐惧吗?
(分布式,97)(分布式系统,29)(分布式计算,7)用心感受一下就行了。
(开源,112),(Github,29)这个也可以看出公司对开源的这方面的重视了,这是一种学习能力的体现,也是对程序和代码的热爱。了解这个也能大概证明自己不是一个只会闭门造车的人。
接着来看一下英文词汇,统计了 top20 的情况,看看作为一个 Python 开发者还需要什么技能,好帮助我们点亮自己的技能树。
![](https://github.com/chenjiandongx/51job/blob/master/images/job_3.png)
毫无疑问,Python 遥遥领先,这是必备的。比较靠前的有 Linux, Django, Web, MySql, Redis。Web 也是 Python 很火的一个领域,相对应的 Django, Flask, Tornado 这样的 Web 框架才会得到这样的重视。Linux 这个也是刚需阿,虽然我一直在 Windows 下开发 Python,但我也挺喜欢 Linux 的,没事也折腾折腾。前端的三剑客 HTML, CSS, JavaScript 也赫然在列,说到底还是 Web 的原因。数据库的也出现了三个,数据库是每个程序开发人员都应该掌握的技能,毕竟数据最优的存储方式是放在数据库里。API 这个词提醒着我们要多看文档,这个其实也就涉及到英语阅读的问题,Python 有着一个很棒的社区,很多优秀的类库,大部分的类库都有详细的文档,而大多数都是英文的。所以拥有一定的英语阅读能力是非常重要的,不要指望所有库类都能有人给自己翻译中文文档。
所有词语前 200 生成词云
![](https://github.com/chenjiandongx/51job/blob/master/images/worldcloud.jpg)
一直觉得词云还是得**黑色背景**视觉冲击更大一点。
## 职位情况
然后对职位进行分析,这个问题让我头可疼可疼了呢,因为没有一个规范,导致招聘信息上的职位写的是各式各样,举个例子吧。Python 高级开发工程师和高级 Python 开发工程师是一个意思吧。Python 开发工程师,python 开发工程师,PYTHON 工程师这三是一个概念吧。有的甚至写着 Python 攻城师???以为自己萌萌哒??? 这样统计起来也比较麻烦,找不到好办法,只能先进行词频统计,然后剩下的再进行手动归类。最终被我归为 20 个类别。
![](https://github.com/chenjiandongx/51job/blob/master/images/job_4.png)
在爬虫和数据分析这块还是有一定的市场的,开发工程师是总的一个范称吧,这个有特别要求高级和中级的。听说大数据现在也挺火的?
## 薪酬情况
下面来谈谈对应的薪酬情况,在这 650 条信息中,有 9 条是没具体提到工资的,另外还有 6 条是按天算工资的,不过这个是针对实习生的。
```
,Python开发工程师,北京
,Python开发工程师,上海-长宁区
,高级软件开发工程师(C++/Python)_互联网金融项目,深圳-福田区
,python高级数据开发工程师(阿基米德),上海
,阿里移动-Python开发工程师,广州
,"Software
,服务端研发工程师-Python(万得子公司),上海
,Python研发工程师(北京),北京
,HY2-监控系统开发工程师-Python(深圳),深圳
248元/天,python爬虫实习生,上海-杨浦区
150元/天,"实习生(Java, Python)",上海-徐汇区
300元/天,Python web开发实习生,上海-长宁区
250元/天,***IT编程中小学讲师助理(C++/Python方向),上海-杨浦区
120元/天,Python/Java实习生,北京-朝阳区
120元/天,Python 数据开发实习生,上海-徐汇区
```
除去这 15 条,在剩下的 635 条里,我们来进行具体讨论。
工资的单位有 万/月,万/年,千/月 三种,而且所写明的工资是一个范围,如 1.2-1.5 万/月,10-20 万/年。这让我没办法统计,因为这不是一个数,是一个范围而且这是一个字符串。
最后,我按一个具体的比例处理所有的工资情况。[x, y] 为其范围,取 x + (y - x) * 0.4 的值。拿 1.0-1.5 万/月来说就是取其范围的差(1.5 - 1.0)= 0.5,来乘以一个比值 0.4(为什么是 0.4 呢,这个是我个人估计的,毕竟我还没参加过工作。因为刚开始工作可能就是底薪,后来才慢慢增上去的。就假设认为均值应该是这个)最后得到 1.0 + 0.2 = 1.2,1.2 就是
程序员无锋
- 粉丝: 3698
- 资源: 2563
最新资源
- 中小学数字化平台解决方案.docx
- 弱电人需要的网络基础知识汇总.docx
- 智慧龙湖天街数字化解决方案.pptx
- 温室大棚、集约养殖、水肥一体、高效节水等设施农业建设方案.docx
- 物流实训室元宇宙解决方案.docx
- 温室大棚、集约养殖、水肥一体、高效节水等设施农业建设方案.pptx
- 农村客货邮融合发展建设方案.docx
- 乡村富民特色产业农业品牌建设方案.pptx
- 农业农村基础设施建设方案.pptx
- 工地数字孪生可视化平台解决方案.pptx
- 基于线性代数与机器学习的实验任务解析-含代码及解答
- 人物检测37-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- ANSYS WORKBENCH轴承动力学仿真,ANSYS做内圈、外圈和滚子故障的模拟图片为凯斯西储大学SKF轴承内外圈故障的结果,振动加速度包络后故障特征频率可以与实验相差仅为5%
- 戴尔笔记本Dell 5400 EDC41 - 维修图纸
- matlab实现遗传算法求解迪卡侬生产调度优化问题(含甘特图)-遗传算法-生产调度-Matlab-迪卡侬生产调度优化
- 时变动态分位数CoVaR、delta-CoVaR,分位数回归 △CoVaR测度 溢出效应 动态 Adrian2016基于分位数回归方法计算动态条件在险价值 R语言代码,代码更数据就能用,需要修改的
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈