爬取51job网站实现数据可视化实验报告书.doc

爬取51job网站实现数据可视化实验报告书.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
南阳理工学院·计算机与软件学院 实训报告 课程名称: 数据获取与预处理(实训) 课题名称: 爬取51job网站实现数据可视化 姓 名: 学 号: 专 业: 数据科学与大数据技术 年 级: 2021级 指导教师: 职 称: 2022年5月 - PAGE 2 - 任务分工与工作量说明 成员名字 任务分工 工作量(%) 可视化(柱状图) 20% 爬取数据 20% 可视化(折线图) 20% 可视化(词云) 20% 可视化(热力图) 20% 数据获取可行性分析和需求分析 模块划分: 爬取数据; 将爬取到的数据存到csv文件中; 将爬取的数据进行可视化处理,其中又分为折线图,柱状图,热力图和词云,数据清洗部分包含在可视化中; 功能描述: 1、目标网站:htts:// 2. 输入关键字后,详细分析该网站的html结构; 3. 数据存储在csv文件中; 4.数据存储到Excel文件中; 5. 注意网站反爬机制,编写代码爬取对应关键字的招聘岗位相关信息; 6. 实现对招聘信息数据的预处理(如薪资待遇的单位、工作地点等); 7. 实现对招聘岗位名称关键字、抓取页数关键字的动态输入; 8. 数据可视化:生成岗位在地图上面的热力图、热门地区岗位薪资待遇柱状图、热门地区岗位招聘个数折线图、以招聘地区及出现的次数生成词云,从而反馈出岗位的热门地区及薪资待遇; 需求分析: 我觉得当代大学生找工作,有了爬虫可以说是如虎添翼。就拿这个来说,我认为如果是正常登录网站的话,不仅需要一页一页地翻找,浪费时间,同样也有可能忽略到重要的信息,但是如果采用爬虫,就可以最大程度避免这种情况分发生,因为爬虫可以将关键字信息大量爬取出来,同时也可以采取可视化将数据以几何的形式更加直观地表示出来,让人一目了然地了解到哪里就业岗位多,哪里就业薪资高,自己的学历水平在哪里更适合发展等等,所以说需求还是比较大的。 算法描述,问题总结 算法描述: 第一步导入相关的库; 第二步爬取数据并提取关键字; 第三步将数据存入到csv文件中; 第四步进行可视化,分别可视化为折线图,柱状图,热力图和词云; 问题总结: 一开始进行爬取数据时只能一页一页的爬取,无法一下子爬取太多,后来引入for循环进行了改正; 爬取数据时一下子爬取太多的话容易触碰反爬机制,后来引入了随机IP地址问题得以解决; 进行可视化时,特别是柱状图,数据清洗不够彻底,爬取数据太多的话会提示索引超出范围的错误,后来对数据所有可能出现的情况进行了考虑,并针对这个进行了相关代码的改动,解决了问题; 热力图进行可视化时,会提示某地坐标无法找到的提示,后来针对这个问题,将少部分地区直接剔除,从而解决了bug 三.使用工具以及爬取的数据声明 使用的工具: Python3.9+pycharm 爬取的数据声明: 工作名称:name 公司名称:company—name 工资:salary 工作地址:work—place 发布日期:update—date 公司类型:type—company 公司福利:fuli 岗位要求:yaoqiu 工作详情网址:job—url 公司介绍网址:company—url 四.详细设计 第一步:爬取数据 首先是设置伪装头,参数传递和随机IP地址; 接下对对应的网址发出请求得到响应从而得到网页源代码; 下一步使用正则表达式提取关键字信息; 再然后将提取到关键字信息存储到csv文件中并生成Excel表格方便后来从中提取信息; 第二步:可视化 首先可视化分为四个部分:折线图、柱状图、热力图、词云; 折线图的设计: 首先是进行切片操作获取地址信息的前两个字,也就是地区名; 接下来将地区名存储到列表中,并遍历列表,从而获得其中的岗位数量信息; 最后利用matplotlib库进行可视化生成地区和岗位数量相关联的折线图; 感悟: 这个折线图的可视化并不难,但是也有需要注意的地方。例如,需要进行数据准备,用list准备横坐标和纵坐标的数据;图像绘制也是需要注意的地方,必须表示出x轴和y轴的标签,表明y轴与x轴是哪两者之间的关系,让使用者看到之后一目了然 柱状图的设计: 首先是从csv文件中提取薪资信息; 由于薪资信息单位不一,有以万为单位的,有以千为单位的,或者是以月或年为单位的,所以这一步要进行数据清洗,将所有的薪资信息全部化成平均月薪,并且以千为单位; 再然后进行切片操作,获取地址信息的前两个字,并获取相应地区对应的薪资信息; 最后利用matplotlib库进行可视化,得到薪资信息以及对应的地区信息的柱状图; 感悟: 设计这个柱状图的意图是想要表示薪资与各地区之间的关系,但是又由于各地区之间的薪资有用千表示的,有用万表示的,也有用月或用年表示的,这时进行数

文档评论(0)

k12教育文档 + 关注
实名认证
服务提供商

本人专注于k12教育,英语四级考试培训,本人是大学本科计算机专业毕业生,专注软件工程计算机专业,也可承接计算机专业的C语言程序设计,Java开发,Python程序开发。

1亿VIP精品文档

相关文档