这一篇是在最近开始接触RSelenium以来,第一次尝试使用该工具操控浏览器获取网页数据,确实方便不少。第一次操作能够这么顺利确实令我非常诧异,仅以此篇纪念我的学习经历!
我本来对实习僧网站是没什么好感的,因为之前自己在实习僧上投的实习简历几乎全部都石沉大海了(一个文科生偏要去投数据分析岗不碰壁才怪~_~)!
然鹅看到最近知乎爬虫圈儿里的两大趋势:爬美图;爬招聘网站。
后来大致了解下了,几乎各类大型的招聘文章都被别人爬过了,自己再去写免不了模仿之嫌,而且大神们都是用Python去爬的(Python我刚学会装包和导数据),自己也学不来。
现在只能选一个还没怎么被盯上的招聘网站,没错就它了——实习僧。
说老实话,实习僧的网站做的还是不错的,看着结构挺简单,可是我用比较主流的Rvest和RCurl都失败了(主要自己技术太渣了,抓包又抓不好)。最后只能勉强用RSelenium爬完了全部所需内容。(用代码驱动浏览器的好处就是不用怎么考虑时延和伪装包头了,但是要遍历成百上千页网址真的很耗时,爬完这个数据用了大约40多分钟)。
以下是爬虫部分:
加载包及配置环境:
|
|
本文主要用的Rwebdriver包来驱动Chrome浏览器,使用该包需要提前配置好桌面环境:
- 下载selenium启动服务器;
- 下载Chrome的chromedriver插件并放入Chrome主目录(添加系统环境变量)
- 下载Rwebdriver包
启动服务
PowerShell启动
|
|
Rstudio启动:
|
|
爬虫主程序:
网页遍历
|
|
爬虫主体代码部分:
|
|
爬虫执行程序:
|
|
保存本地:
数据清洗
接下来做数据清洗:
|
|
我们最终获取的清洗后数据如上所示。
假如本次项目需求(虚拟)要求我们获取以下几个问题:
- 实习僧的实习招聘主页岗位主要是什么性质的?
- 哪些公司最缺实习僧?
- 实习岗位具体分布的地域和城市?
- 哪些城市对实习僧的需要最为强烈?
- 实习工资大致什么水平,与城市和地域是否有关系?
- 实习岗位一般都要求每周到岗多少天?
- 实习周期一般需要多长时间?
- 哪些职位需求最为频繁,职位需要量与城市之间的大致是如何分布的?
带着这些个问题,让我们尽情的畅游在可视化的世界里吧……
数据可视化阶段
实习僧的实习招聘主页主要是什么性质的?
|
|
绝望了,一共爬了5000条实习职位信息,做了去重处理,显示仍有3357条,建议实习僧的产品运营团队考虑下要不要标准化一下这个职位性质,内门怎么可以创造这么多独特的职位~_~
对于这个问题,真的难倒我了,因为所爬数据中的职位性质没有统一的预设标准,所以我只能用文本分词的形式来进行提取了,先分词,然后统计高频词,最后按照词频来进行模糊分析啦(可我我对文本挖掘一窍不通啊~_~)
|
|
从实习职位分布图上来看,人力资源实习生职位需求最为强烈,其次是运营、财务、新媒体,这些类型的职位多为现代新兴服务业,更为符合大学生这一群体的口味和兴趣。
|
|
但是将职位性质分词整理成关键词后,似乎结果有所不同。
哪些公司最缺实习僧?
这里我们来统计所爬职位信息中公司发布职位的频率,发布最多的则作为评价公司对实习生需求的标准。
|
|
|
|
前一百个实习生需求最旺盛企业:
实习岗位具体分布的地域和城市?
先做一个地域分布图:
接下来来制作分布图:
|
|
哪些城市对实习僧的需要最为强烈?
从第三个问题及其分析结果上我们已经看出了整体形势,北上广深依然是需求最为旺盛的地区,这也符合城市的实际经济发展情况及我们的预期。
|
|
实习工资大致什么水平,与城市和地域是否有关系?
|
|
|
|
按照全部参与计算聚合的平均工资来看,北上广深反而没有什么吸引力了排名普遍不高,我猜想是因为一线城市的低工资职位数量过多,压低了平均值。
接下来我们按照100,150的临界点进行工资高低的划分。
|
|
|
|
|
|
分析到这里,趋势已经很明显了,因为北上广深等一线城市的职位实在是太多了,无论是高新职位还是低薪实习岗位都能排在全国各城市的前列,所以出现日均工资很普通的现象。相对而言,日薪在200以上的高薪职位更能代表各大城市对日常实习生需求的强烈程度,因为在这一阶段,北上广深的优势非常明显,遥遥领先与其他二线城市,而针对日薪高于200的实习职位统计结果可以看出来,北上技压群雄(不愧是帝都和魔都),深圳和广州处于第二线,200以上的高新实习职位遇北上相比,相差比较大,仅占前两者约1/3~1/5。而杭州、南京、武汉、合肥则稳稳处于第三梯队。
实习岗位一般都要求每周到岗多少天?
|
|
从分布上看,一周五天居多,这样是正常的工作日现象。3天、4天也是用人单位补缴能接受的周工作天数。
实习周期一般需要多长时间?
|
|
哪些职位需求最为旺盛?
下面开始分析最后一个问题,也是我认为最有价值,最值得探究的问题,最后一个待分析指标是实习职位,这个指标跟我们最初分析的那个岗位性质略有不同,该变量相对比较规范(职位类别有确定的预设范围)。
我们新建一个分析数据,用职位、工资区间的中间值,地区三个变量进行后续分析:
首先分析下岗位的集中分布情况:
各个岗位工资分布:
从工资均数上来看,七大类职位差距不大,说明仅就实习岗位工资而言,结合爬取的总体样本,不考虑地域差异,实习工资差异不很明显。也许是因为实习岗位中真正有含金量的并不多,换句话说,企业的高价值岗位,对于工作经验、技能的要求相对较高,而实习生则在这方面都不具备优势。(如果是社招或者小校招岗位信息的话,可能工资均值的差异会大一些)。
最后,让我们用一个桑基图来完结本次针对实习僧网站的爬虫分析:
|
|
桑基流向图的趋势灰常明显,北上两市在所有类别职位(7大类)上均居前列,各职位类别中,市场和运营职位需求最为强烈,北京和上海在对市场和运营职位的需求容量机会平分秋色。广州和深圳仍然略于北上,但是与其他二线城市相比较,优势仍然很明显。(也许是因为实习僧做为主打校园实习岗位信息咨询平台,针对的主流群体基本以在校大学生为主,而北上广深的高等教育资源分布差异明显,在高校数量方面,北上的要沾光很多,广州与深圳的高校资源相对比较匮乏,在以上分析的各项指标中都占尽劣势)。
爬虫和代码分析,算起来整整花了将近12个小时,虽然分析的不是很精准、客观,但是过程还是很有收获的,期待下一次做的更好!
联系方式:
wechat:ljty1991
Mail:578708965@qq.com
个人公众号:数据小魔方(datamofang)
qq交流群:[魔方学院]298236508
个人简介:
杜雨
财经专业研究僧;
伪数据可视化达人;
文科背景的编程小白;
喜欢研究商务图表与地理信息数据可视化,爱倒腾PowerBI、SAP DashBoard、Tableau、R ggplot2、Think-cell chart等诸如此类的数据可视化软件,创建并运营微信公众号“数据小魔方”。
Mail:578708965@qq.com
备注信息:
本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。