SYS SECURITY    系统安全摘要:近几年来在大数据背景下,大数据相关技术人才的需求不断增加,论文就是以某招聘网站为例,
通过Python爬取大数据相关职位的情况,再经过数据处理、数据分析,得出具体哪些岗位的需求和薪资是最
多,以及哪个城市的需求最旺盛。分析结果为有意向从事相关行业的从业者提供数据支持。
关键词:Python;数据采集;数据预处理;数据分析
近几年来随着大数据的不断普及和发展,大数据相关技术在各个行业的应用越来越广,数据挖掘和数据分析也成为学术界的研究热点。随着技术的不断普及应用,大数据技术的相关岗位需求也是越来越多,技术人才的缺口也越来越大。猎聘2019年大数据人才就业趋势报告显示:中国大数据人才缺口高达150万。大数据就业人员需要掌握什么技术?本文通过使用爬取互联网某招聘网站的相关数据,完成数据预处理,最后对得到的数据进一步做数据分析,得到相关结果,给大数据人才的培养及大数据相关行业的从业者提供支持[1]。
一、研究策略
本文旨在研究如何从杂乱无章的大数据岗位中挖掘出对大数据岗位的基本技能需求的信息,包括各公司
对大数据岗位的招聘信息,运用多种分析法对信息进行分析获取信息资源。通过互联网招聘方法分析对信息资源进行分析和整理获取有效情报,提出互联网招聘的策略及保障措施,解决众多大数据专业人员的求职需求和各个企业的招聘需求。
二、数据采集
(一)页面分析
打开某招聘网站,在搜索栏输入关键词“Python”之后,打开Google的检查模式,在Network中分析页面的加载过程,到需要数据的URL,发现页面是动态加载的,并且为post请求,URL固定不变,只有data中的一些参数发生变化[2]。
(二)爬取功能代码
将返回的文本数据转化为json格式,通过for循环遍历取出我们需要的数据,爬取过程如下:
json_content=json.loads(content)
results_list=jsonpath.jsonpath(json_content,’$.. results’)[0]
for results in results_list:
job=jsonpath.jsonpath(results,’$..jobName’)[0]
salary=jsonpath.jsonpath(results,’$..salary’)[0]
company_json=jsonpath.jsonpath(results,’$.. company’)[0]
company=jsonpath.jsonpath(company_json,‘$.. name’)[0]
deuLevel_json=jsonpath.jsonpath(deuLevel_json,’$.. deuLevel’)[0]
eduLevel=jsonpath.jsonpath(eduLevel_json,’$.. name’)[0]
try:
workingExp_json=jsonpath.jsonpath(results,’$.. workingExp’)[0]
workingExp=jsonpath.jsonpath(workingExp_json,’$.. name’)[0]
except:
workingExp=’’
(三)数据获取与保存
通过requests的text方法得到了请求页面返回的文本数据,r =  通过分析,页面返回的数据为json 格式,那么即可通过jsonpath获取公司,职位,薪资,学历,经验等数据,并将数据存放到HDFS中,如图1所示,数据总数为183172条。
图1 爬取的数据总数
大数据专业相关岗位的爬取与分析
张晋芳    靳悦振
73
SYS SECURITY    系统安全
三、数据预处理
爬取的数据,发现存在以下问题:爬取某些关键词得到的内容与计算机无关,并不是大数据相关岗位,要进行删除;爬取到的“薪资”为一个范围,不利于后续的分析工作,将“薪资”处理成“最高薪资”“最低薪资”和“薪资均值”三列;存在大量空白数据和重复数据,需要对这些数据进行批量清理;公司名称一列包含地理位置信息,需要单独提取出来,以供后续分析。这些问题,需要通过数据预处理来解决。
1.清理重复数据 
首先将获取的数据中与计算机行业无关的进行剔除,随后去除数据中的重复数据。设x代表“公司名称”的值,y代表“职位”的值,o代表“学历”的值,若三个值相同时,认为这两条数据为重复数据,删除其中一条数据完成数据清理。处理完成后,剩余数据量为123171行。
2.将“薪资”的值离散化和数值化,处理成“最高薪资”和“最低薪资”
“薪资”的值是一个范围值,将左边界赋给“最低薪资”,右边界赋给“最高薪资”,二者的平均值赋值给“薪资均值” 单位都统一为月薪,单位为k(千)。具体操作采用了正则表达式提取相关信息,Python代码如下:def extract_digits(salary):
 ……提取每个岗位薪资描述中的数字
returns:薪资数值list或者np.nan(薪资面议)
import re
digits = re.findall(r’\d+(?:\.\d+)?’,salary)
.323965
3.处理公司名称列
公司名称列中除了包含有公司名,还有地理位置信息,比如该公司所在的省市信息,此步处理需要用到中文分词技术,由于提取简体中文字符串中的省市区信息是较常见的任务,这里我们采用了Python
中的开源模块cpca,它基于Jieba进行中文分词,并利用中国行政区域官方数据进行省市映射。其中公司名中无法提取省市信息的将被忽略。经过以上几步预处理之后,数据如表1所示。
四、数据分析
(一)文本聚类分析
相似度是用来衡量文本间相似程度的一个标准。本文采用基于距离度量的欧几里得距离测度招聘文本间差异。在文本聚类中,文本数据集中的每一个样本(我们将其简单称为“文档”)都可以由一个文档特征向量表示,被划分为同一个集合的文档也被称之为属于同一个簇(cluster),而用于规定簇的中心点则本称为质心(centroid),当一个向量到某个质心的距离小于其至其他所有质心的距离时,这个向量对应的文档将划分入质心所对应的簇中[3]。
本研究中具体采用了经典的K-means聚类,该算法具体原理为:已知数据集 D={x1,x2,...xn},其中每一个样本都可以由一个 d 维实向量表示, K-means 聚类的目的便是要将数据集中的这 n 个样本划分到 k 个集合之中(k 小于等于 n),使得各个集合的组内平方和(Within-Cluster Sum of Squares)最小。该问题也可以由下式表示:                                       
其中,S 为样本的聚类,μi则为S i中所有点的均值向量。
表1 预处理之后的数据
公司名称职位薪资经验学历省市区地址薪资
均值
最低
薪资
最高
薪资
33成都迈思信
息技术有限
公司
Android
开发工
程师
8.5K-15K3-5年大专四川成都
迈思信息技术
有限公司
11.758.515.0
85上海浩方信
息技术有限
公司
安卓开
发工程
8.5K-13K1-3年大专上海上海
浩方信息技术
有限公司
10.758.513.0
191上海企顺信
息系统有限
公司
自动化
测试工
程师(中
级)
6.3K-8.5K1-3年本科上海上海
企顺信息系统
计算机专业ui设计做什么有限公司
7.40  6.38.5
282中国科学院
上海高等
研究院
软件工
程师
8.3K-12.5K无经验本科上海上海
中国科学院上
海高等研究院
10.408.312.5
288中国科学院
上海高等
研究院
高级卫
星数据
工程师
8.3K-12.5K5-10年硕士上海上海
中国科学院上
海高等研究院
10.408.312.5
74
75
SYS SECURITY      系统安全
通过对不同职位进行分簇,求职者可以结合自身状况更加快捷地获取相关信息资源。聚类结果显示,将“职位”提取出关键词:Java 开发、UI 设计师、Web 前端、PHP、Python、Android、深度学习、算法工程师、Hadoop、Nodejs、数据开发、数据分析师、数据架构、人工智能、区块链。随后可对各种职位的薪资情况进行可视化分析。
(二)地区分布情况
从大数据职位的区域分布来看,北京的招聘需求最大,紧随其后的是珠三角经济带和长三角经济带以及四川重庆区域,西部地区的需求稍显不足。
(三)大数据职位技能要求
对所有的大数据职位进行分词,词频统计,然后使用词云显示,如图2所示,明显看出市场对开发工程师、前端开发、Java 工程师等职位需求量最大。
图2职位图云可视化结果
图3 各省各学历对应平均薪资热力图
(四)经验要求
需求经验来看,3-5年工作经验的中级职位需求量最大,其次是初级职位。
(五)省份学历薪资联合分析
信息结合考虑,求出各个省份各个学历相关职位的平均薪资,如图3可看出通常情况岗位所要求的学历越高,平均薪资也越高,其中要求博士学历的岗位平均薪资要明显高于硕士本科及其他学历。广东、江苏、河南等地对要求博士学历的岗位能提供最高的平均薪资,而广西对要求本科学历的岗位平均薪资反而高于硕士,也从侧面说明各省对大数据行业的布局策略不同。
五、结语
数据爬取、数据预处理、数据分析的流程得出大数据相关职位的薪资分布、职位区域分布、经验要求、学历要求等信息,为广大的大数据相关职位的求职者提供了参考借鉴,使他们的求职更快捷高效、匹配性更高。H
参考文献
[1]王碧瑶. 基于 Python 的网络爬虫技术研究 [J]. 数字技术与应用 ,2017(5):76.
[2]陈伟龙,邱梁泉,张小华.基于网页文本的数据处理类岗位需求分析[J].信息记录材料 ,2018,19(11):219-220.
[3]祯富, 许嘉裕. 大数据分析与数据挖掘[M]. 北京:清华大学出版社,2016.
(作者单位:张晋芳,山西林业职业技术学院;靳
悦振,太原学院计算机科学与工程系)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。