100篇-Python爬虫专栏

爬了拉勾30页数据,我做了这几张图

2019-05-18  本文已影响0人  mylovefan

其实是个萌新的“爬虫+tableau”练手,因为关于这次操作的所有知识在王隐在录音的文章里都齐全了,但亦步亦趋跟着教程做一份一模一样的练手意思不大,于是就萌生了把爬虫对象从“少数派”变成“拉勾”的心思。

1. 基本流程

基本就是:数据采集➡️数据清洗➡️可视化➡️再次清洗

a. 数据采集方法没啥好说的,web scraper + Chrome 傻瓜式爬虫

打开拉勾网主页,搜索人力资源,将地点设置为上海,其他条件设为不限,月薪集工作性质同样不限,观察后发现可以采集到如下职位信息:

tips:实际拉勾上1个职位信息是由2个 div 框拼接而成(图中蓝色框和红色框)

2个 div

b. 关于数据清洗,因为从Chrome保存的是 .csv 文件,所以我们直接使用 Excel 打开该文件即可,原始数据清洗前如下:

清洗前

可以看到清洗前数据基本没法看……到这一步,在爬数据之前的计划就非常重要了,比如说我们在最开始计划出现如下几种可视化图形:

所以我们会发现在原始数据中缺少一些字段,比如:

但好在 Excel 本身就是非常强大的数据处理工具,我们可以使用自带的各类函数、功能去做数据的清洗,比如 leftb() 、 vlookup 、 分列 等,最后,经过清洗的数据如下:


清洗后

可以看到,数据经过清理之后就变得友好多了,重点几个tips:

c. 数据可视化:
先吹一波 tableau ,因为感觉对用户尤其是我这样的小白用户特别友好,网络上(尤其简书里)有非常多优质的教程,同时官方也几乎是竭尽所能的来帮助用户,不信点这里看例子🌰(这个🌰真的可以点……)。

刚才🌰里是我在思索“如何将地理位置定位到tableau附带的地图里”,最终效果可以看下面的 薪资-地理分布轮次-地理分布

当然前面也说了,我是手动将地址批量转换为经纬度的,没有像 community 里说的用 python 跑个脚本,因为我们总共数据就500+条(主要是我不会),而当数据达到万甚至百万、千万这个量级的时候就瞎了,别的不说,Map Location 转化经纬度先跑个2天再说。

所以朋友们,超轻量级的可视化分析还是要善于利用前人写好的工具,少走弯路。

来看看结果

薪资-地理分布
  1. 首先是薪资-地理分布,(除非碰到我当时卡了一下的步骤,基本操作流程就略过了)可以看到是一个非常典型的符号地图,根据颜色深浅我们能大致了解上海不同地区“人力资源”类职位薪资对比情况
    注意圈出来的黑圈部分,最深的位置,对应陆家嘴商圈,而整体看下来,像黄浦、徐汇、大虹桥、五角场的平均薪资基本是第一梯队,一定程度上符合我们的预期。

轮次-地理分布
  1. 而在轮次-地理分布中,我们能看到不同轮次公司在上海的基本分布,从天使轮到上市,包括未融资和不需要融资的公司,都使用不同的颜色在地图上标出。

可以看到,第一感觉是分散,而实际在 tableau 中通过点选不同轮次的图例,也确实发现各家的分布也都是一样的松散,也进一步从这个角度证实了前几天公众号中的观点:上海没有市中心


轮次-规模/薪资
  1. 至于轮次-规模/薪资图中,我们会发现一些有趣的现象:

职位名称
  1. 对于职位名称图:
    其实一开始想做个词云,但发现爬取的职位名称主要是词组,没时间去琢磨如何取词、分隔,简单做了个图,发现前三大主流招聘职位为:人事专员、人事助理、HRBP —— 划重点:几乎可以等同视为搜索热词

职位景气程度
  1. 对于职位景气程度,私以为可以如此定义:同一家公司同一类职位需求数量越高,则该职位越景气。
    结果大家也看到了,除了拥有公司名字的几家公司之外,绝大部公司的招聘职位需求都在1-3个之间。
    sosad

行业分布
  1. 关于不同轮次公司的行业分布及该行业的平均市场薪资,基本就是图里这样了,可以看到:

薪资-经验
  1. 最后,薪资与工作经验的关系:

p.s : 这篇文章完全是新手之作,时间匆忙的情况下,有错误和疏漏在所难免,希望各路大佬不吝指出,谢过。

p.p.s : 特别说明,文章中所有数据皆为19年5月18日,在拉勾网站搜索“人力资源”,筛选地址为“上海”所对应的数据。

最后的最后,感谢大家的时间,未完待续。

上一篇下一篇

猜你喜欢

热点阅读