admin 管理员组

文章数量: 1184232


2024年3月10日发(作者:二进制转换十进制教学反思)

2020.12

网络信息工程

基于Python的招聘网站信息爬取与数据分析

刘晓知

(黄冈职业技术学院,湖北黄冈,438002)

摘要:文章通过对Python爬虫的具体设计与数据分析具体流程进行了简述,并对涉及到的相关技术进行了诠释,并给

出具体分析结果,通过应用Python爬虫定向抓取网站当中的相关招聘信息数据,之后对所爬取的招聘信息数据进行处

理,并及时存入到数据库当中,并对招聘数据信息进行综合处理与分析,结合不同的区域、职业要求、学历要求等相关基

础条件,合理分析某一具体职业的具体薪资状况,并将所得的分析数据结果进行展示。

关键词:Python;爬虫;可视化;招聘网站;信息爬取;数据分析

Python-based Information Crawling and Data Analysis of

Recruitment Websites

Liu Xiaozhi

(Huanggang Vocational and technical college,Huanggang Hubei,438002)

Abstract:

This paper describes the specific design and data analysis process of Python crawler, and

explains the related technologies involved, and gives the specific analysis results. Through the

application of Python crawler, it grabs the relevant recruitment information data in the website, and

then processes the crawled recruitment information data, and timely stores it in the database, and

The recruitment data information is comprehensively processed and analyzed, and the specific salary

status of a specific occupation is reasonably analyzed based on the relevant basic conditions such

as different regions, vocational requirements, education requirements, etc., and the results of the

analysis data are displayed.

Keywords:

Python; crawler; visualization; recruitment website; information crawling; data analysis

0 前言

网络爬虫具有诸多优势,可根据用户的实际需求,对

网页数据信息进行爬取,获取整个网页,且具备很强的自定

义性特点。完成该步骤之后,相关设计者便可以结合自己的

目标需求以及想要的数据,对爬虫进行自定义改善,过滤删

除掉没有用的信息数据,保存有用的数据信息。文章通过对

Python爬虫应用技术的具体设计与数据分析进行了阐述,之

后对数据进行相应的处理与分析,结合不同区域、不同学历

要求等对某项职业的具体薪资状况进行综合分析,从而直观

的呈现分析得出的可视化数据。

2 基于Python招聘网站信息爬取和数据分析

2.1 Scrapy框架与运行过程

其工作流程与运行的整个过程如下所示:(1)爬虫程序

获得请求之后便开始完成抓取;(2)爬虫程序允许调度程序,

并对接下来的请求做好准备,进行抓取。(3)爬虫程序返回,

为下一个爬虫程序发送请求;(4)爬虫请求会被发送到实际

加载程序当中,网络数据可由下载中间件完成下载。(5)完成

下载之后,下载的结果便会及时返回爬虫程序。(6)爬虫程序

可通过中间件对加载器响应进行处理,并返回给搜寻器予以

处理。(7)爬虫程序会对相应的内容进行处理。将新的URL及

时反馈给引擎。(8)完成处置程序的items,可由引擎传输到

项目管道,之后引擎会将处理结果及时反馈给调度器,便可

以计划进行接下来的爬取任务。(9)针对实际情况,重复上述

的过程,直到爬取所有的URL请求

[1]

1 背景介绍与简述

爬虫技术因其自身具备的突出优势,被广泛应用于数据

信息采集当中,爬虫程序在网页搜索过程中,会处理请求与

响应,如浏览器对网页宣传的过程,用户在浏览网页的时候,

浏览器会发送请求到网址所在的具体服务器当中,服务器便

会响应接收到的请求,并及时反馈给浏览器。

当前,数据分析在各个领域和行业当中,都是极为重要

的手段,被广泛应用到不同环节当中,数据分析具体应用体

现在以下方面:(1)探索性数据分析;(2)模型的分析与选择;

(3)推测判断。

2.2 Robots协议

Robots协议也被称之为机器人协议,会产生一个文件,

该文件会对搜索引擎产生限制,限定那部分界面可以进行爬

取,机器人协议也是在整个互联网当中相对认可度比较高的

规则制度,其能够有效避免相对隐私的信息被泄露,提高安

全性,从而很好的保护因素,其不是强制性的,因此,搜索引

75

网络信息工程

擎必须要保障有意识的遵循它。

该协议对站点的具体服务器以及目录进行有效的存储,

其格式为TXT文件,文件当中也对爬虫程序给出了具体的限

制规则,对搜索引擎的具体爬取权限进行了相应的限制。

3 招聘信息的爬虫具体设计与实现

3.1 整体设计

爬虫主要分为以下几个部分:对初始爬取网页URL与网

页信息进行综合分析、实现爬取、储存数据、数据处理与数据

的分析、可视化。网页信息与初始爬取网页信息分析,网站的

网址为起始点,需要针对实际情况,对起始网址的具体格式

进行全面的分析与改造。实现爬取;当对起始网址进行分析

之后,可分析其初始URL,并完成爬取任务,结合实际的返回

结果,对不同的函数进行调用。数据储存:对于获取到的数据

信息要存入到MySQL当中。数据处理:在进行数据分析前,应

当对数据进行分析与处理,实现数据可视化分析。

3.2 爬虫模块设计

3.2.1 抓取模块

此次爬虫设计的主要目的是通过信息爬取,首先,可以

打开网站,并输入职位的信息,如Python工程师,进入到招聘

Python工程师网页,也被称之为一级网页,并查看网页源码

信息,如果其中所包含的信息数据不完整,则需要点开某个

单独的招聘信息链接,进入到具体的招聘信息网页,也就是

二级网页,根据具体的分析,其中主要包括爬取需要的所有

相关信息,因此,某个爬虫程序在司机运行过程中,爬取静态

网页的时候,可以直接获取数据信息,但是爬取动态的网页

数据时,由于数据信息可能不会在网页源码当中,需完成抓

包分析,此次进行爬取操作的网站为静态网页,不需抓包操

作,便可直接获取相关数据信息。

直接获取相关数据信息的方法比较多,常用的包括以下

几个方面:(1)正则表达式;(2)Python当中对HTML进行解析,

对其进行处理。(3)Scrapy框架可支持XPath,可获取HTML

当中的数据信息。

此次实验过程中所应用的是XPath,其属于一种网络语

言,主要描述了以文档逻辑结构为基础,或者是层次结构路

径等,处理与扩展语言文档项目,每个表达式一定要深入全

面的理解文档当中的XML标记与序列之间的对比,XPath

也使得编写表达式逐渐变得更加的简单方便,难度系数比

较小。

3.2.2 储存模块设计

Pyhon当中所采取的储存方式类型较多,比较常用的CSV

文件、MySQL数据库、Redis数据库以及JSON文件等,此次

实验过程中未涉及分布式爬虫,所选择的是MySQL数据库,储

存数据,在数据储存之前,应当采用Items文件对相关数据进

一步格式化处理,当完成该步骤处理之后,并将数据上传,储

存到数据库当中,第一部需要做的是创建数据库java,将招

聘信息储存到里面。

76

2020.12

3.2.3 数据处理设计

(1)脏数据分析与处理

此次主要通过pandas对相关数据予以处理,具体流程如

下:获取数据;从MySQL数据库当中获取相关数据之后,要创

建数据库连接,当完成数据库连接创建后,再由pandas读取

和处理数据库信息,当完成读取之后,数据要及时转换成为

pandas可以进行操作的数据结构DataFrame:df=pandas.

DataFrame(data)

(2)去重

Pandas当中的函数是对重复记录进行删除操作和处理

的,可由以下代码及时获取不重复的数据记录。去除无价值

数据信息:当获取到没有任何价值以及无用的信息数据,如

岗位一项内容,除过Java开发工程师之外的其他相关职位信

息数据,应当及时去除无用的数据信息,这样便能够获取精

确的Java以及开发岗位数据信息了

[2]

4 数据信息的分析与可视化处理

4.1 总体薪资状况分析

薪资的具体情况会对人们的就业方向与选择产生一定

的影响,此次文章针对获取的相关数据,对全国不同区域的

Java开发工程师的具体薪资状况进行综合全面的分析与可

视化的呈现。数据结果可得出,当前,在全国范围之后,Java

开发工程师的平均薪资在7000-13000每月,也能够充分反映

出Java开发工程师有着很好的就业前景与发展。

4.2 区域分析

其次,数据结果还反映出了Java开发工程师在不同大

城市当中的具体占比,其中上海、深圳、北京、广州、杭州、南

京等城市对该该岗位的需求占比已经超过了全国所有区域

的一半以上,也能够充分说明这些城市的总体需求量是非常

大的,特别是上海,排名遥遥领先,也说明这些城市该岗位有

着广阔的发展空间

[3]

4.3 岗位职责综合分析

由于公司之间存在的很大的不同,因此,岗位的职责需

求也千差万别,所以要对岗位的应聘者对相关技术的掌握程

度进行综合全面的分析,此次通过Python分析其中的关键

词:主要分为三种分词模式:(1)精确模式:将句子分为相对

精准的词段,此模式适合此次应用。(2)完整模式:在句子当

中获取全部的单词,该模式相对比较快速,但是精确度不高。

搜索引擎模式:将长单词划分为不同的短单词,这样能够

有效提升召回率,此模式适合搜索引擎。

5 结束语

文章通过Python创建了爬取招聘网站信息数据的爬虫

程序,主要为招聘信息,之后对所爬取到的数据进行处理分

析,并进行可视化展示。单机爬虫便能够满足及适用于此次

数据爬取要求,之后结合数据,对岗位在不同区域的薪资与

岗位要求进行了全面分析,并得出可视化结果,为求职者在

找工作过程中提供了便利。

(下转第110页)

(3)

科技论坛

电、断电后需要进行反应的时间较长,不利于对生产工作的

精确控制,在进行维护检修时和再次进行工作时需要等待较

长的时间,降低了工作的效率。

运用PLC技术对电气工程自动化的开关控制则能够有

效解决这个问题,它使用的是不同于传统继电器的虚拟继电

器,模拟出开关断电的作用,不但可以快捷有效的对工业机

械进行通电、断电控制,而且能够避免机械的电路损毁,提高

维修保养人员维护和工业机械自身的工作效率,增加企业的

经济利益,提升电气工程自动化控制的水平。

2020.12

坏,就需要进行拆卸和替换,而如果是断电方面出现问题,也

需要人为进行关闭机械运行,对人们的生命安全造成威胁,

降低了工作的效率;运用PLC技术对电气工程进行监控,则

能够很好地解决这些问题,反馈技术能够实时的向操作者展

示机械运行的状态,方便操作者进行管理控制,对运行中产

生的问题也能够及时的反应,加快工作人员的检修速度和工

作效率,PLC数控技术的应用则能够准确的判断出机械出现

故障的原因,对于某些故障可以主动修复或者由操作者进行

指令修复解决,其他的故障则能够为检修人员提供具体的问题

所在,免除了对故障机械进行全面排查的麻烦,有利于相关人

员判断最佳解决方案,提高人员和机械的工作效率,促进企业

的经济利益提高和电气工程自动化控制技术的发展进步。

3.2 PLC技术在顺序控制中的应用

PLC技术发展出的顺序控制功能使企业的生产运营和家

庭生活都更加安全和便捷。在企业进行生产经营时,可以通

过远程的操控和控制及其工作时间来完成产品的生产,一个

人可以操作多台机械,降低了企业对人员的支出,改善了工

作环境,更加方便管理控制,同时利用PLC技术的顺序控制功

能,能够使机械按照时间和顺序进行逐步操作,有效的避免

了失误的风险,对人们的生命财产安全进行了保障;PLC技

术对人们生活中电气工程自动化控制也提供了很大的便利,

PLC与智能化的系统相结合,人们可以进行远程的操作控制。

比如,在下班回家的路上启动自动控制系统,按顺序执行预

设好的家庭工作,减少人们的工作任务量,使用PLC的温度控

制在室内温度达到某以标准时断电,回到家即可享受舒适的

温度等,在为人们提供便利的同时保证了人们的安全,避免

了事故的发生,满足了人们的电气工程自动化控制的需求,

提高了电气工程自动化控制的水平。

3.5 我厂將PLC技术运用到电气工程自动化控制中的

方式

我厂为提高电气工程自动化控制的水平,对原料厂进行

了智能化改造,利用PLC技术对堆取料机进行控制,將原本需

要人员在堆取料机大车上进行的操作转为电气工程自动化

控制,利用电脑进行操作,提高了工作的效率,降低了操作失

误的风险几率,降低个企业的成本支出,提高了经济效益。

4 结语

随着时代的发展进步,人们对于机械控制、工作效率和

生活水平的要求不断提高,这就要求科技不断进行发展进步,

电气工程自动化控制的发展与运用,使人们对工业机械的控

制更加方便快捷,使工作的效率得到了提升。但社会的进步也

对电气工程自动化控制提出了更高的要求,将PLC技术运用到

电气工程自动化控制中,不但使工程设计更加科学、合理,而且

使人们的控制更加简单,更加便捷。提高了工程机械的运行效

率,保证了人们生命财产的安全,促进了企业经济效益的提

高,满足了人们对提升电气工程自动化控制水平的需求。

PLC技术应用在对电气工程自动化控制中有很大的优

势,能够明显的提高电气工程自动化控制的水平,促进工作

人员检修和机械的工作效率提升,保证机器的工作寿命。我

们要积极研究应用PLC技术,提高PLC技术和电气工程自动

化控制的水平,为自动化的建设发展做出贡献。

3.3 PLC技术在闭环控制中的应用

在运用泵类机械进行生产的企业中,由于控制泵类机械

运转的电机大多是闭环控制类型,本身就具有自动控制与手

动控制两种操作方式,则可以通过使用PLC技术的强大计算

能力对电机运行的时间进行计算控制,对泵的种类进行选择,

提高机械设备运行的效率,保证产品的质量,从而提高企业的

经济效益,促进电气工程自动化控制和PLC技术的发展进步。

3.4 PLC技术在数控和反馈方面的应用

保证机械工作效率、企业产品质量,以及电气工程自动

化控制水平方面主要就是对机械的监控,在常规的人为控制

机械运行中,人们是一个人活着多个人操控一台机械,对于

机械的故障与问题能够及时发现和检查。使用传统的电气工

程自动化控制后,虽然减少了企业人员的支出,一定程度上

提高了机械的运行效率,但对于问题的发现排查却加大了不

少难度,在电气工程自动化控制出现问题时,需要逐一进行

检查、维修,如果出现问题的机械短时间内无法修复或者损

参考文献

[1]冮震.基于PLC技术在电气工程自动化控制中的应用分

析[J].建材发展导向(上), 2020, 18(2) : 56.

[2]李鹏杰.基于 PLC 技术在电气工程自动化控制中的应用

分析[J].建筑工程技术与设计, 2019, (16) : 3588.

[3]王钰涵.基于PLC技术在电气工程自动化控制中的应用

分析[J].化工管理, 2019, (15) : 16-17.

(上接第76页)

参考文献

[1]熊畅.基于Python爬虫技术的网页数据抓取与分析研究

[J].数字技术与应用, 2017(09) : 45-46.

[2]苗玥,刘晓勇,金佳妮,等.基于Python的医学数据爬

取及分析处理[J].信息技术与信息化, 2019, 229(04):

61-63.

[3]贾柠瑜.基于python爬虫的岗位数据分析--以拉勾网为

例[J].信息技术与信息化, 2019, 000(004) : 64-66.

110


本文标签: 进行 数据 信息 控制 分析