大数据分析-基于Python的网络爬虫及数据处理---智联招聘人才招聘特征分析与挖掘的算法实现

概要

  随着科学技术的发展,人类进入了互联网时代,不仅数据量庞大,而且数据种类繁多,Python简单易学, 语法清晰,在数据操作方面有着一定优势,成为了数据采集和可视化领域的热门语言。本论文主要是使用Python来作为开发语言,并对网上招聘信息进行数据采集和可视化,了解和研究网上招聘的现状。采集数据时使用Scrapy抓取网页招聘信息,采集智联招聘职位数据,并将初始数据储存到MySQL数据库中,并得到可视化结果,从而在短时间内了解数据背后的价值与规律。
关键词:Python 数据采集 Scrapy框架 MySQL数据库

一、研究背景与意义

  抓不住关键信息,错失了寻找工作的良机。另一方面,企业的招聘方式已经渐渐跟不上时代的步伐。人才是一个企业甚至国家振兴的动力,人才的招聘和引进关系到一个企业是否能够在激烈的社会竞争中脱颖而出,是否招募到足够的人才决定了企业的兴衰。所以,如何招募到所需要的人才资源成为了一个企业发展过程中最为重要的一环。
  在当今这个网络异常发达的大数据时代,网上招聘已经成了一种流行趋势。但是网络招聘也存在了许许多多的问题和不足,比如:
(1)招聘信息真实度难以分辨
  当今网络招聘面临最大的挑战就是招聘信息的真实度问题。当求职者在招聘网站输入身份信息的时候,有可能导致招聘信息的泄漏和身份信息的曝光,这就是网络招聘发展的过程中所遇到的最大难题。有某些个别的招聘网站由于自身没有足够用来展示的数据信息,就剽窃其他的招聘网页的数据信息来扩充门面。如果这样的活,就会出现一个公司的招聘已经完成了,但那些已经失去作用的招聘信息仍然出现在公司没有发出过信息的网站之上,就变成误导求职者的虚假信息这种情况,耽误了应聘者的时间及精力。
(2)网络招聘服务并不完善
  如今的网络招聘大多都是照葫芦画瓢,原样照搬下来招聘信息就草草了事。网络招聘不仅要对人力资源这一课题有着深刻的认识,还必须需要具备过硬的技术底蕴,而且需要强大的语言组织和策划的能力,这样才能吸引更多的投递简历。
(3)招聘信息的处理难度大
  在互联网技术不断地进步,各种各样网络招聘信息也不断地出现并且让人目不暇接。网络技术的进步虽然能加快信息的推广与普及,但是也会招致应聘者对应聘岗位的过度竞争,使得招聘公司收到繁多的简历。这样的话就会意味着招聘公司在网络招聘方面的投入会不断增加,从而增加招聘公司的负担。
  因此,一份能够自动爬取网上招聘信息并进行整理存储的爬虫就派上了用场。本篇论文采用Python语言编写的一个采集数据和进行可视化处理系统。本设计使用Scrapy框架来采集需要用到的网络招聘信息,然后把爬取下来的数据存入MySQL数据库之中,在对这些数据进行数据可视化处理。就能够通过这些结果来认识理解相关的招聘因素的关系,让毕业生们更加直观的,清晰地了解相关工作的薪资待遇及工作前景。更加方便的选取适合自己的工作职位。招聘网站数据可视化分析平台从各种的招聘信息中提取出有价值的数据,并以数字图像的形式进行直观化展示。把用户从杂乱无章的数据里面解放出来。通过该设计能够更高效地理解和分析据聘数据信息,快速寻找对于自
身有用的信息。使得招聘信息能够更加有效地传述。有利于求职者明确自己的学习方向,掌握需要的工作技能。

二、数据采集

2.1 采集需求

   本篇论文采集的目的网站是智联招聘,需要从其中获取一些职位各种相关的信息,用来为完成后面的数据可视化部分做好准备,需要获取的信息大概包括以下几个方面:各个职位特有的ID,职位所在的城市,职位的薪资水平,职位类型,职位要求学历,职位的标签,职位要求的工作经验等等。

2.2 网页分析

   首先打开电脑浏览器,在搜索框中输入智联招聘,点击并且进入智联网站主页。然后在搜索栏中输入通信工程师,并进行搜索。搜索结果如图3.1所示
  在这里插入图片描述

图 3.1搜索结果图
  本篇设计所需要的网络招聘代码数据并没有在这里出现,其实发现数据数据应该是从别地方的请求传递而来的。在这里需要找到浏览器设置,点击进入开发者模式,点击Network。下一步点击XHR–>点击的requests–>在response中可以看到需要的数据就在这里如图3.2。
  在这里插入图片描述

图 3.2源代码效果图
从图3.2发现这些服务器返回数据格式是是json类型,这样就很方便解析了。

2.3 数据爬取

  因为爬虫抓取的数据量工作较大,所以为了更加高效地进行数据分析,采用Excel的方式工作效率开始明显降低。
  因此,采用数据库技术进行存储是必要的[2]。从这里开始,正式开始构建程序的大体框架,首先需要用代码来模拟虚拟用户向智联网站的服务器发送请求查询数据。正因为如此,这里需要构造相关参数的程序请求头请求智联官网网页,相关的代码如3.3图所示:
在这里插入图片描述在这里插入图片描述

三、数据可视化以及研究结果

3.1 可视化的实现

  在获取到所以需要的数据之后,剩下的最后一步就是可视化的实现,由于从数据库获取到的数据类型是dict类型,我们先用a来等于字典全部的键,用b来等于字典全部的值。做可视化采用Python很方便,使用plt.bar,这样一来就能得到一个直方图,再通过show将图展示出来,并使用savefig将图存储成图片就完成了。

3.2 研究结果

  通过本篇论文设计程序的运行,最终得到了结果图6.1,图6.2,图6.3,图6.4所示:
在这里插入图片描述

图 6.1不同岗位的平均薪资
    从上图可以清楚地看到不同职位之间的薪资水平以及差距,这就大大减少了求职者时间与精力的浪费,为求职者职位挑选提供了可靠地参考。
在这里插入图片描述

图 6.2工作平均薪资的分布水平
  通过图6.2可见,大多数职位的薪资大都集中在1000-5000之间,随着薪水增长,所对应的人数更加稀少。
  在这里插入图片描述

图 6.3薪资与工作经验的关系
  由图6.3所示,招聘人数最多的往往要求工作经历在1到3年之间,而要求10年的招聘岗位最少,这说明,随着互联网技术的发展,各种岗位的更新换代也在不断加速,企业最需要的都是有经验的新生代劳动力。
在这里插入图片描述

图 6.4 招聘企业薪水水平
通过上图6.4可以清晰地看出,社会团体提供的薪资水平最低,民营企业提供的薪资水平最高。

四、总结

  本篇论文主要是利用Python的网络爬虫,通过相应的程序代码,从智联网站上爬取我们所需要的招聘数据,并将这些爬取下来的json类型的网页数据存储进我们建立的关系型数据库(Relational database)MySQL之中,最后通过字段确定,数据获取,可视化实现来展示出我们所需要的结果图,例如平均工资与职位之间的关系,工作经验对于工作薪资待遇的影响等等。
    在这次毕业设计中,因为我对Python这门语言一知半解,加上爬取过程相对来说比较复杂,这导致了我在爬取智联招聘网站时花费了大量的实践与精力。虽然说最后勉勉强强完成了一部分指导老师交代的课题要求,但是还存在着许许多多的缺陷与不足,由于之前从未涉及过Python这门语言和MySQL数据库,再加上我的编程功底确实不尽如人意,这让我在Python的过程中频频出错,漏洞百出。在编程过程中,因为对Python语言的不熟悉,我都是一边从网上搜集资料,一边查阅相关Python的书籍进行代码的编写。这样就会有好多Python底层代码特别容易产生逻辑性
错误,面对这些我充分认识到了自己在编程方面还存在着很多不足,这份程序也有待改进。希望在未来的日子里,我也可以通过不断的学习强化自身能力,不辜负学校老师的教育和指导。

六、 目录

1 绪论2
1.1 研究背景及意义2
1.2 研究现状3
1.2.1 国外研究现状3
1.2.2 国内研究现状3
1.3 论文的结构安排4
2 设计原理4
2.1 应用软件介绍4
2.1.1 Python介绍4
2.1.2 爬取框架选择5
2.2 设计思路6
3 数据采集6
3.1 采集需求6
3.2 网页分析7
3.3 数据爬取8
3.4 进行网站数据的分析9
4 MySQL数据库9
4.1 数据库选择9
4.2 将数据存储进数据库10
5 数据的分析处理11
5.1 字段确定11
5.2 招聘数据的获取12
6 数据可视化以及研究结果13
6.1 可视化的实现13
6.2 研究结果13
7 结论及展望16
参考文献:17
致谢18

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/481758.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SG5032VAN差分晶振X1G004261001100专用于5G通讯设备

差分晶体振荡器(DXO)是目前行业中公认高技术,高要求的一款晶体振荡器,是指输出差分信号使用2种相位彼此完全相反的信号,从而消除了共模噪声,并产生一个更高性能的系统。差分晶振一般为六脚贴片晶振,输出类型分为好几种,LVDS,LV-PE…

MySQL | 视图

视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表的数据变化也会影响到视图。 1. 基本使用 1.1. 创建视图 create view 视图名 as select语句; 创建测…

(2023,图像放大与超分辨率,扩散,缩放堆叠表示,多分辨率混合,多尺度联合抽样)Ten 的生成能力

Generative Powers of Ten 公和众和号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群) 目录 0. 摘要 2. 相关工作 4. 方法 4.1. 缩放堆叠表示 4.2. 多分辨率混合 4.3. 多尺度一致抽样 4.4. 基于照片…

全球大型语言模型(LLMS)现状与比较

我用上个博文的工具将一篇ppt转换成了图片,现分享给各位看官。 第一部分:国外大语言模型介绍 1,openai的Chatgpt 免费使用方法1:choose-carhttps://share.freegpts.org/list 免费使用方法2:Shared Chathttps://share…

查看文件内容的指令:cat,tac,nl,more,less,head,tail.file

目录 cat 介绍 输入重定向 选项 -b -n -s tac 介绍 输入重定向 nl 介绍 示例 more 介绍 选项 less 介绍 搜索文本 选项 head 介绍 示例 选项 -n tail 介绍 示例 选项 file cat 介绍 将标准输入(键盘输入)的内容打印到标准输出: 输入重定向 本应…

Docker 存储

目录 1、概念介绍 Storage Driver 无状态容器 有状态容器 Data Volume 2、bind mount 指定挂载文件只读权限 bind mount 挂载目录 3、docker manage volume 查看 volume 自定义 volume 使用 NFS 存储 4、共享数据 容器与host共享数据 volume container data-pa…

200基于matlab的利用神经网络算法训练图片

基于matlab的利用神经网络算法训练图片,并利用GUI界面读取图片,最后将识别出的图片数值返回到GUI界面上。0-10数字数据库已有,可自行添加其他数据库进行训练和识别。程序已调通,可直接运行。 200 matlab BP神经网络 手写数字识别 …

liunx centos7 下通过yum删除安装已经安装的php

执行下面命令查看php相关的包 rpm -qa | grep php 只需要卸载几个名为common的包即可,其他同版本依赖会被全部删除,删除php71w-common,71w版本的依赖包全部会被删除。 查看php包的命令 rpm -qa | grep php 或 yum list installed | gre…

单引号 vs 双引号:在MyBatis条件判断中的选择困境

哈喽,大家好呀,好久不见!今天是一篇浅记。MyBatis的条件判断中,使用单引号或双引号来判定字符串类型数值的坑… 一、单引号与双引号的区别 在MyBatis的条件判断中,使用单引号或双引号来括起字符串值都是可以的。但是在…

Linux systemd详解

1、概念 1.1 systemd systemd 是一个用于管理 Linux 系统启动过程和系统服务的系统和服务管理器。它被设计为取代传统的 System V init 系统,提供了更快的启动时间、并行启动服务、更好的日志记录和更强大的管理功能。 1.2 unit Unit 是 systemd 中所有配置文件…

区块链技术下的新篇章:DAPP与消费增值的深度融合

随着区块链技术的持续演进,去中心化应用(DAPP)正逐渐受到人们的瞩目。DAPP,这种在分布式网络上运行的应用,以其去中心化、安全可靠、透明公开的特性,为用户提供了更为便捷和安全的消费体验。近年来&#xf…

苏州城市学院芮国强一行莅临聚合数据走访调研

3月19日,苏州城市学院校党委书记芮国强、校长赵志宏一行莅临聚合数据,就数据科技赋能行业升级展开调研。聚合数据董事长左磊接待来访。 城市学院党委理论学习中心组一行参观了聚合数据展厅,了解了聚合数据的发展历程、数据产品、应用案例、奖…

能强优品木业:打造高品质混凝土支撑模板,铸就建筑精品

在现代建筑施工中,高质量的混凝土支撑模板是确保工程质量和施工安全的关键所在。贵港市能强优品木业有限公司作为一家专业建筑模板生产厂家,凭借25年的丰富经验和先进的生产工艺,为建筑行业提供了多层板芯、高强度承重、防潮不变形、施工安全抗弯曲性强的优质混凝土支撑模板。 …

day16-环形链表

问题描述: 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环&#xff0…

linux下的打包/解包命令(tar,zip/unzip)

目录 打包/解包 作用 zip -r选项 unzip -d选项 如果不使用递归压缩 -l / -v选项 tar 介绍 选项 示例 打包/解包 作用 使多个文件变成一个文件,不易造成数据缺失使下载时间变短 zip 将目录或文件压缩成zip格式 -r选项 递归式压缩某目录及其所有子目录中的文件 如果不…

【大数据】五、yarn基础

Yarn Yarn 是用来做分布式系统中的资源协调技术 MapReduce 1.x 对于 MapReduce 1.x 的版本上: 由 Client 发起计算请求,Job Tracker 接收请求之后分发给各个TaskTrack进行执行 在这个阶段,资源的管理与请求的计算是集成在 mapreduce 上的…

大模型+强化学习_在线交互调参_GLAM

英文名称: Grounding Large Language Models in Interactive Environments with Online Reinforcement Learning 中文名称: 通过在线强化学习在交互式环境中建立大型语言模型 链接: https://arxiv.org/pdf/2302.02662.pdf 代码: https://github.com/flowersteam/Grounding_LLMs…

Listary 清除无效的搜索历史记录

目录预览 一、问题描述二、原因分析三、解决方案四、参考链接 一、问题描述 listary 用过一段时间后,搜索其他东西总会显示一个感叹号的之前的文件,强迫症很难受啊。 二、原因分析 猜测是历史记录的问题记录历史搜索的文件没有重建 三、解决方案 提示…

Centos7 搭建openVPN

一、概述 CentOS 搭建openVPN时需要一台有公网IP的服务器。openVPN 是一个基于SSL/TLS的虚拟专用网络(VPN),它允许你创建一个安全的连接,通过它你可以将你的网络流量封装并加密,从而在公网上进行传输。 一、搭建证书…

现代白色系装修,打造高级感生活空间。福州中宅装饰,福州装修

玄关 玄关嵌入满墙收纳鞋柜,下方留空15公分作为拖鞋区,中间留出40公分作为随手区 客厅 客厅打通阳台,白色亮面瓷砖通铺,即使不做落地窗设计,室内也是十分明亮 落地电视柜,减少卫生死角,白色整体…