周 霞,彭孝谱,刘彦文*,姜宇榕
(1.湖北科技学院 资源环境科学与工程学院,湖北 咸宁 437100)
传统的现场招聘具有供需双方面对面沟通、信息可靠等优势,而随着互联网技术发展,网络招聘因其成本较低、选择余地大、涉及范围广、方便快捷,并且不受地点和时间的限制等优点而对传统现场招聘方式进行了有益补充。不断更新的网络招聘信息及时反映了社会和各行业对人才能力需求的现状,对人才的自我定位具有良好的导向性。同时,通过深层次挖掘网络招聘信息,可以使人才培养单位及时掌握市场对人才技能需求的最新动态,对此后的课程设置、学科布局等有良好的指导意义。但招聘网站海量公开的招聘岗位数据的连续动态发布,受地区分布广、数据量大、数据格式不统一、数据不断修改等因素的影响,导致人工采集效率不高,而利用Python 网络爬虫对网络招聘网站上地理信息专业招聘信息收集具有便捷高效的优势。本文采用Python 网络爬虫技术获取前程无忧招聘网站地理信息招聘与就业相关数据,之后对获取的海量数据进行统计分析,以期为地理信息专业人才提供全面、直观的就业前景信息与人才培养导向参考。
网络爬虫技术是互联网时代能够获取大量相关主题内容的主流工具之一,可以从不同的站点获取预先设置好的主题内容,在为爬虫设置相关搜索关键词后就可以对指定网站的指定内容进行定向获取[6]。网络爬虫的实现有不同的方法,本文采用Python 编程语言的爬虫框架Scrapy 进行信息获取。前程无忧人才网是国内人才招聘、求职、找工作等在内的全方位的人力资源服务信息发布平台,以前程无忧招聘网站为地理信息科学就业信息的数据来源,设置搜索条件为“地理信息科学”、“GIS”两个关键词进行模拟网页搜索,对搜索到的2020-01-05 前海量职位信息进行分类抽取并存储。
本文运行爬虫数据自动获取程序后总共收集了6 892 条职位信息,由于同一职位可能包含多个关键字索引,因此将获取的职位信息进行去重处理,处理后共计存储5 484 条有效职位信息。通过分析,保存的职位信息中,岗位所在地区、薪资待遇表达的格式有所不同。岗位地区部分精确到街区,部分只有所在城市,因此本文删除岗位地区信息中的街区部分而只保留所在城市。由于原始数据中薪资待遇信息有按日薪、月薪、年薪的格式,薪资单位也分为元、千、万,所以本文将各类格式的待遇统一换算为月薪(单位:千/月),按最低和最高薪资存储,数据格式也从字符串转换为数字。
经过预处理后,岗位所在城市、学历要求、薪资待遇、公司类型等数据都是能够直接统计的数据,但获取的职位描述信息中,包含岗位要求、岗位职责等混合信息。经过分析,部分公司在发布岗位信息时是按照关键词将信息分开展示,因此可以使用关键词来分离岗位要求与职责。实际操作时由于大部分公司发布的招聘信息并没有明确主题,且关键词并不统一,这为信息直接分离带来一定难度。在多番实验的基础上,本文最终采用结构化处理与模糊匹配相结合的方法,设计并实现了职位描述分离算法,将岗位要求、岗位职责等信息进行了有效分离与存储,具体实现流程如图1 所示。
图1 结构化分离与模糊匹配
岗位要求与岗位职责分离方法中首先将获取的职位描述信息按图1 进行关键词判断,若存在关键词,则进行关键词分离处理。将分离的职位描述进行递归,多次递归调用后,将职位描述分离成若干不包含关键词的职位描述,再将不包含关键词的职位描述分别进行岗位要求、岗位职责模糊匹配率的计算。若关键词的字符串长度X2=n,则按n、n-1、…、 2、1 长度依次对关键词字符串进行分割,将分割后的子串与目标职位描述进行字符匹配,将匹配成功的子串进行存储并删除包含在内的子串,最终计算匹配成功字符长度为X1,模糊匹配率P=X1/X2。例如:关键词字符串为“了解精通熟悉掌握经验以上”,则其X2=12,若匹配成功的子串有“精通、掌握、经验、以上、经验以上”,进行删除处理后剩下“精通、掌握、经验以上”,则匹配成功字符串长度X1=8,模糊匹配率为P=8/12。通过比较模糊匹配率,最终分类存储职位描述信息。
为了更加简明的反映爬虫获取的岗位需求信息,选取岗位数量超出100 个的城市,并将平均工资数据按各城市岗位数量由高到低排列制成表格(表1),其综合反映了职位需求地域、岗位需求数量及其对应工资待遇的关系。对各个城市的岗位数量统计分析可知,岗位需求数量大多还是分布在我国经济发达地区,如东南沿海、长江经济带、北京等地区,地理信息产业的发展与经济、科技水平的发展密切相关,这些地区在国内相关技术与产业领域具有较高的发展水平。岗位数量多的地区除经济发达外还具有一个相同的特点,都具有多所开设地理信息专业的高校并且具有较高水准,例如武汉、广州、北京、上海、南京、长沙等城市。人才源源不断的输送也为地理信息产业的发展与创新提供能量,所以就业者在选择就业城市时,可以重点关注这些地区,相对而言既有利于匹配所学的专业能力,也有助于毕业生获得更多的就业机会。
表1 岗位城市平均工资表
在就业城市的选择时,就业竞争压力、薪资等问题受到求职者较多的关注。由表1 可以看到,自数据收集时起近3 个月,地理信息就业相关招聘岗位数量超过500 个的城市依次是武汉、广州、北京地区,而上海、深圳等一线城市的相关招聘岗位数量却减少一半,反映了这些地区彼时相应人才需求已呈饱和状态。随着用人单位不定时发布招聘信息,招聘网站的岗位数量一直在动态变化。鉴于市场资源配置对人才流动的导向性,岗位数量多的城市竞争压力会相对较小,选择这些城市相对有更多的机会找到一份适合自己的工作。这些城市中,最低的平均工资为5.8 k/月,最高的平均工资达到了18.0 k/月,薪资水平高低跨度达到了12.2 k。最低平均工资超过10 k 的城市有北京、上海、深圳,最高平均工资低于10 k 的只有长沙与昆明。在这些岗位数量超过100 个的城市里,普遍的薪资水平较高,但不同城市的薪资水平差异较大,城市的选择也决定了薪资水平的高低。
一般来说,当排除其他相关因素后,薪资待遇与个人的工作能力有一定的关系,在用人单位对求职者能力不甚了解的前提下,招聘条件中的工作经验就成为判断个人工作能力的首要指标。而对于求职者,薪资待遇永远是求职过程中所关注的现实问题,往往薪资待遇与工作经验有着密不可分的关系,本文对二者相关信息进行了统计分析(图2)。
图2 工作经验要求柱状图与平均最低工资表
由图2 可见,基于高校毕业生等主要人才供给来源工作经验普遍缺乏的现状,公司企业等主要用人单位对地理信息科学专业的人才工作经验的要求相对较低。而相对来说,1 ~2 a 工作经验的职位数量相对较少,这也反映1~2 a 工作经验的跳槽者并不太受到企业的重视,反而拥有3~4 a 工作经验的求职者则较受欢迎。5~7 a、8~9 a 和10 a 以上的工作经验者大多都属于工作稳定的状态,所以发布的岗位相对较少,在薪资待遇方面,也比较符合企业招聘对应工作年限的要求。由图3 平均最低工资曲线可见,0 ~2 a 工作经验的求职者,薪资待遇水平变化不大,只是在工作2 a 时略有涨幅。真正产生比较大的薪资变化是在工作3 a 以后,涨幅依次在3~5 k,工作5 a 后,薪资的平均水平超过10 k,在工作经验到达10 a 以上后,平均薪资甚至高达22 k。可见,工作经验是薪资待遇的决定因素之一,求职者可以根据自身工作经验来选择职位并提出自己期望的薪资。
在求职过程中,求职者会根据自身情况规划自己未来的职业生涯。这时候,公司规模与类型便成为职业规划中较强的影响因素,本文公司规模与类型统计分析如图3。
由图3 可见,在所有招聘单位中,民营企业、上市公司、国企占了较大的比重。在中小规模企业中,少于50 人占比16.88%;50 ~150 人占比为30.50%;150~500 人占比为27.65%;合计占比为75.01%,大规模企业占比为24.99%,可见中小规模企业占招聘企业的大多数。公司规模的大小决定了公司的实力,较大规模的公司一般是运营较成熟的公司,此类规模的公司一般内部人员较稳定,流动性较少,而且招聘要求较高[7]。而中小规模企业在各方面都比较均衡,这些企业处于发展时期,往往更注重人才的培养,会给求职者提供更好的学习提升的资源。对比民营企业,上市公司、国企在薪资待遇、福利上会占更大优势,但晋升可能会相对困难,求职者可以根据自己的职业规划进行选择。
图3 公司类型与公司规模
求职是一个双向选择的过程,招聘单位在发布的相关信息中,一般包括了对求职者能力要求、工作职责、薪资待遇等相关信息的描述。本文将职位描述生成分类字符串,利用Python 中的分词模块jieba 将字符串分割为单词列表,按照词频生成词云并通过Python实现可视化[8],词语的字号越大说明出现的频率越高、次数越多(图4)。
由图4a 可见,岗位要求依据词频由高到低大体可以分成3 个层次,第一层次中计算机能力、地理信息系统、软件工程、本科学历、开发经验、数据库等关键词最为醒目,反映出在类似岗位要求上招聘者达到了很高的一致意见,相关知识与技能也是求职者需要具备的基本能力。第二层次中表达能力、良好沟通、软件开发、数据处理、GIS 软件、前端开发、责任心、合作精神等频次较高,这些需求体现出招聘者对求职者不仅具有较强的专业基础能力需求,而且希望应聘者拥有较强自身素质,能适应团队工作。第三层次词频上,主要以熟悉GIS 开发、Oracle、二次开发、项目开发、GIS 平台、大数据等词语为主,这些关键词代表着更强的专业能力或专业方向,包含着热门的应用与技术方向,从侧面反映出用人单位对人才综合素质、人才专业视野、人才发展潜力等的关注。
由图4b 可见,各项工作内容的词频较为平衡,大致可以分为两个层次。第一个层次的词语有GIS、设计、方案、开发、数据处理、项目经理、项目管理等,这些关键词反映出地理信息工作者的普遍工作内容,拥有这些工作的实战经验能让求职者更快的适应工作。第二个层次的词语有设计、计划、研发、研究等词语,包含着在具有丰富经验后的统筹工作、创新性研究与地理信息未来的研究。在大数据与人工智能时代,地理信息科学的发展也迎来了新的挑战与创新。选择这类地理信息科学的创新与研究,可能(在)对未来的职业生涯有极大的帮助,也符合社会的发展。
图4 岗位词云分析
本文采用Python 的爬虫框架Scrapy,结合地图数据统计分析,对2020-01-05 前3 个月左右来源于前程无忧人才网站地理信息科学专业相关的5 484 条有效职位信息进行了相关分析,结果显示企业对地理信息专业人才具有较高的基本要求,如本科学历、计算机能力、软件开发能力、数据处理能力。除这些基本能力外,对求职者专业能力和团队合作能力也有着较高的要求,并希望求职者能够积极沟通与表达。此外,部分企业岗位的招聘则希望求职者掌握较强的专业能力和热门技术,如大数据技术等。大部分企业对无经验的地理信息人才提供了较多岗位,对拥有0~2 a 工作经验的人才提供的求职岗位相对较少,在支付的薪资待遇上,也没有太大的波动。对拥有3 ~4 a 工作经验的求职者提供的求职岗位相对前者较多,因为这部分求职者不仅经验丰富,处于职业规划的上升期,之后会相对稳定,会持续给企业带来效益,所以薪资水平上也迎来首次大幅增长。这些企业大部分为民营企业,少部分为上市公司和国企,规模约在50~500 人左右,主要分布在我国经济发达的地方或高校聚集的地方。
相对拥有工作经验的地理信息人才而言,应届毕业生会更需要得到就业前景分析与指导。应届毕业生应该打好专业基础、培养地理信息行业就业所需的基本能力,最好结合自身爱好或市场需求培养在某一专业领域上较强的竞争能力,如开发能力或数据处理能力等。平时参与多种形式、全方位的综合实习等是提升整体能力的最佳方式,只有拥有丰富的实践经验才能更受企业的欢迎。在选择就业的城市与就业的企业时,求职者应当结合自己的学历、专业能力、实战经验来选择轻松就业或薪资高的城市以及对应规模的企业,在获得一份工作后,不应当过分关注薪资或急于更换公司跳槽,应该积攒自己的工作经验为以后的职业发展打下良好的基础。
本文阐述了网络招聘信息爬取收集、数据清洗与分析的方法,并利用柱状图、饼状图、折线图、词频云图等,较为直观地分析了地理信息专业人才在求职过程中所关注的热点问题,包括岗位地区分布、薪资水平、公司规模、岗位要求、岗位职责等几个方面。结合这些分析结果,从招聘者、应届毕业生求职者的角度综合分析了企业对求职者的素质要求及应届毕业生在求职过程中所具备的基本能力,最终给出部分建议,为广大地理信息专业人才提供借鉴与参考。