一、需求分析

1.1 深圳大数据招聘信息分析

数据源: 智联招聘
网站: https://sou.zhaopin.com
题目: 深圳大数据招聘分析

1.2 要求

  1. 爬取前5页
  2. 将数据保存到sqlite数据库中
  3. 按企业性质(民营、上市公司、国企等)汇总做饼图
  4. 按学历汇总做柱形图
  5. 详情页对专业技能做词云图
  6. 可自由发挥分析展示其他信息
  7. 可以通过网页访问结果
    参考步骤
    数据获取
    以深圳为例:在智联招聘网站上选择深圳->在搜素栏输入大数据->点击搜索

二、软件设计

表3-1 设计技术表

任务 采用的方法
数据的获取 Scrapy爬虫框架,json
数据的存储 Python的sqlite轻量级关系型数据库
数据的处理 Python的pandas库
数据的分析展示 Python的pyecharts可视化库
python服务器框 Flask

2.1 爬虫设计:

  • 所选技术栈:
    表3-2 实训爬虫技术表
技术 概念
Scrapy 数据的获取
Json 对Response返回的数据进行筛选
SQLite 进行数据的存储
  • 软件框架:
    简介:
    Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。其最初是为了页面抓取(更确切来说,网络抓取 )所设计的, 也可以应用在获取API所返回的数据(例如:Amazon Associates Web Services) 或者通用的网络爬虫。

    图3-1 scrapy工程目录树图
  • 分析思路
  1. 明确目标
    我们打算抓取https://sou.zhaopin.com/招聘网的深圳大数据行业的数据
    网站里的所有职位的名称、月薪、公司名称、学历、所需工作经验、详情页要求等
  2. 制作爬虫,数据的筛选
    我们具体分析出数据的来源,如说智联招聘是一个前后端分离的网站,通过用户点击,返回特定的json文件从而渲染网站,展示给用户。因此我们需要通过json分析特定URL返回的js文件。用键值提取关键数据;
    由于详情页的数据获取需要页面的跳转,且数据是一次性渲染展示,可通过Scrapy自带的Xpath选择器提取关键数据。
  3. 保存数据
    对数据的存储,我定义了pipelines管道,通过管道,将数据存储进轻量关系型数据库Sqlite。
  • 爬取的url及字段内容等
    从图3-2、图3-3中,通过谷歌浏览器分网站分析工具了解,网站与用户的交互的其大部分数据来源与一个json文件

    图3-2 网页数据传输图

    图3-3 网页返回的json文件数据图
    由此可得,该URL就是目标,由于我们是要爬取多页的数据,因此我将前三页的url对比分析

                                                 表3-3 前三页URL
    
页数 url
1 https://fe-api.zhaopin.com/c/i/sou?pageSize=90&cityId=765&workExperience=-1&education=-1&companyType=-1&employmentType=-1&jobWelfareTag=-1&kw=%E5%A4%A7%E6%95%B0%E6%8D%AE&kt=3&_v=0.28055871&x-zp-page-request-id=fa894fc03f6c45eaa9fd0996be366e7a-1560240334056-500996&x-zp-client-id=06bafb27-d935-46c7-8278-206d6b355f21
2 https://fe-api.zhaopin.com/c/i/sou?start=90&pageSize=90&cityId=765&workExperience=-1&education=-1&companyType=-1&employmentType=-1&jobWelfareTag=-1&kw=%E5%A4%A7%E6%95%B0%E6%8D%AE&kt=3&_v=0.28055871&x-zp-page-request-id=fa894fc03f6c45eaa9fd0996be366e7a-1560240334056-500996&x-zp-client-id=06bafb27-d935-46c7-8278-206d6b355f21
3 https://fe-api.zhaopin.com/c/i/sou?start=180&pageSize=90&cityId=765&workExperience=-1&education=-1&companyType=-1&employmentType=-1&jobWelfareTag=-1&kw=%E5%A4%A7%E6%95%B0%E6%8D%AE&kt=3&_v=0.28055871&x-zp-page-request-id=fa894fc03f6c45eaa9fd0996be366e7a-1560240334056-500996&x-zp-client-id=06bafb27-d935-46c7-8278-206d6b355f21

表中可得,从第二页开始URL的变化就在start=90、180,每一页都递增数为90
总结得出,变换start的数值可得到不同的页面。
2.2 数据存取:数据表设计、相关SQL语句等
1.数据表的设计
表3-4 数据表字段的设计

字段 标题 公司 公司类型 薪酬 经验 学历
类型 varchar varchar varchar varchar varchar varchar
字段 详细链接 工作地址 福利 技能 要求
类型 varchar varchar varchar varchar varchar

2.相关SQL语句

insert_sql = 'insert into bigDataZL values' \' ("{}","{}", "{}","{}","{}", "{}","{}","{}", "{}","{}","{}")'.format(item['title'],item['company'],item['company_type'],item['salary'],item['experience'],item['education'],item['detail_url'],item['address'],item['welfare'],item['skill'],item['claim'])
 createSql = "create table bigDataZL(" \"标题 varchar(100)," \"公司 varchar(100)," \"公司类型 varchar(100)," \"薪酬 varchar(100)," \"经验 varchar(100)," \"学历 varchar(100)," \"详细链接 varchar(100) primary key ," \"工作地址 varchar(100)," \"福利 varchar(100)," \"技能 varchar(100)," \"要求 varchar(100))"

2.3 数据分析:数据处理流程等

查重处理:以详情链接字段为主键。
数据的读取:pandas读取数据表转为DataFrame数据类型

  • 企业性质汇总数据分析
    按企业性质分组统计,得到企业性质的统计值

  • 学历汇总数据分析
    按学历分组统计,得到学历的统计值

  • 详情页对专业技能做词云图数据分析
    详细页的岗位要求需要我们对关键字的提取,其中不乏一些无用信息,也需要我们剔除掉,如图3-6:

    图3-7的处理,首先为定义一个专业词库列表,并且让每一条数据都只提取不重复的关键字,且定义键为单词,值为1的字典存进列表中,再将列表转为Pandas的DataFrame类型统计单词出现的频率

  • 薪酬汇总做数据分析
    为了更好地进行分析,我们要对薪资做一个预处理。由于其分布比较散乱,很多值的个数只有1。为了不造成过大的误差,根据其分布情况,可以将它分成【5k 以下、5k-10k、10k-20k、20k-30k、30k-40k、40k 以上】,为了更加方便我们分析,取每个薪资范围的中位数,并划分到我们指定的范围内。

  • 所需经验数据分析
    按学历列分组统计,得到学历的统计值

2.5 结果展示:所选择的Web框架、网页展示的方案设计等

  • 选择的Web框架:
    Flask是一个使用Python编写的轻量级 Web 应用框架。其WSGI工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 Flask使用 BSD 授权。
    Flask也被称为“microframework”,因为它使用简单的核心,用 extension 增加其他功能。Flask没有默认使用的数据库、窗体验证工具。
  • 网页展示的方案设计
    通过用户点击从而展示不同的分析内容,如图

三、测试报告

3.1数据采集


3.2可视化图表





大数据招聘信息可视化相关推荐

  1. python大数据招聘信息_2017招聘大数据丨Python需求增速达174%,AI人才缺口超百万!...

    原标题:2017招聘大数据丨Python需求增速达174%,AI人才缺口超百万! 看了Boss直聘发布的<2017互联网人才趋势白皮书>,奇小酷只有一句话要说,新的一年,希望大家火的像Py ...

  2. 毕业设计-基于大数据招聘岗位可视化系统-python

    目录 前言 课题背景和意义 实现技术思路 实现效果图样例 前言

  3. 大数据毕设选题 - 大数据招聘租房数据分析可视化系统(python)

    文章目录 0 前言 1 课题项目介绍 2 相关技术介绍 2.1 爬虫 2.2 Ajax技术 3 Echarts 4 数据获取 4.1 总体流程如下 4.2 获取招聘数据 4.3 获取租房房源信息 5 ...

  4. python flask + js ajax + echarts 53万条招聘信息可视化系统的渣实现

    (从0到1非常详细步骤)flask+ajax+echarts 53万条招聘信息可视化系统的实现   本篇blog默认:您已经入门echarts.html.js.json.python,知道一些大概的东 ...

  5. 大数据招聘,我就这样被算法选中

    杰德·多明格斯今年26岁,从未上过大学,被镀金公司的算法判定为编程高手,而后被这家新创公司招聘为程序员. ​(文/ MATT RICHTEL)去年夏天,26岁的杰德•多明格斯(Jade Domingu ...

  6. 基于大数据的城市可视化治理:辅助决策模型与应用

    作为数据分析和知识挖掘的常用方法, 可视化在城市规划.管理工作中的运用日见增多.考虑大数据的基本特性和可视化技术本质, 从图像展示.图像理解.图像运用三方面对管理决策的动态过程加以探索, 提出大数据可 ...

  7. 基于 Python 的招聘信息可视化分析系统

    温馨提示:文末有 CSDN 平台官方提供的博主 Wechat / QQ 名片 :) 1. 项目简介 本项目利用 Python 从某招聘网站抓取海量招聘数据,进行数据清洗和格式化后存储到关系型数据库中( ...

  8. 聚合中返回source_大数据搜索与可视化分析(9)elasticsearch聚合分析Metric Aggregation...

    在上一篇文章中,我们介绍了<大数据搜索与可视化分析(8)kibana入门教程-2-Discover>,本文学习elasticsearch聚合分析,是对<大数据搜索与可视化分析(3)e ...

  9. HBase项目实战:HBase+Flume+Kafka+Hive+SSM实现电信大数据通话信息实时读写定位系统

    内容简介 一.项目内容深度分析 1. 项目内容概览 2.数据的大致流向分析 3. 涉及的知识难点分析 二.项目所用到的框架清单 三.项目实战代码 1. 后端开发 1. 构建工程项目模块 2.开发通话记 ...

  10. 如何监测大数据舆情信息动态的方法技巧

    大数据时代,面对互联网上数以百万的信息数据,再加上数据更新的速度,对数据的获取.收集和分析不是件易事.所以,对于很多政企部门来说,怎么做大数据监测是其共同面临的难题.毕竟数据监测的是否全面和精准,关系 ...

最新文章

  1. mysql中decimal与float_MySQL中的float和decimal类型有什么区别
  2. Selenium3自动化测试——5. 鼠标悬停操作
  3. 每天一道Java题[7]
  4. php 获取class id,CSS Class 與 CSS ID
  5. linux驱动大小,为什么在Linux字符驱动程序读取调用中大小总是= 4096?
  6. 程序员四大禁忌(同样适合向梦想冲刺的所有人~~)
  7. C语言中声明复数用什么字母,用c语言定义复数-20210407134457.docx-原创力文档
  8. 增强火山图,要不要试一下?
  9. Python functool module
  10. IIS发布可下载文件的站点
  11. matlab根据数值大小聚类,[matlab聚类分析]请教高手:用matlab做聚类分析,节点数多于30个怎么画聚类图啊?...
  12. 2021 最新版《神经网络和深度学习》中文版.pdf
  13. python爬取别人qq空间相册_Python_小林的爬取QQ空间相册图片链接程序
  14. Linux-DNS学习记录01-安装部署
  15. 扫雷——完整版!!!!!!
  16. 一、回首向来萧瑟处,也无风雨也无晴
  17. 低碳存储助力数字化建设,富士胶片磁带存储整体方案亮相2022数博会
  18. 【用户投稿】优麒麟社区懒人版本(含软件全家桶)一键安装
  19. img标签图片的刷新,删除
  20. android 极光 环信,环信、容联云通讯、极光推送和网易云信IM即时通讯功能接入方式_部署方式_企业服务汇...

热门文章

  1. BGP多线和双线双IP服务器有什么区别? 哪个网站访问速度更快?
  2. 离散数学——命题逻辑
  3. 六爻:占卜记录(By eof)
  4. Python Day05习题
  5. MonthCalendar显示该年的12个月份
  6. 鸿蒙太空是什么意思,我所居兮,青埂之峰:我所游兮,鸿蒙太空,谁与我逝兮,吾谁与从?渺渺茫茫兮归彼大荒!什么意思?求解...
  7. 计算机实际应用,计算机在各个领域中的应用
  8. 计算机基础及msoffice应用内容,计算机一级计算机基础及 ms office 应用考些什么 自考计算机应用基础,要考哪些内容?...
  9. stm32 HAL 重映射
  10. 一份完整的 IPv6 环境下 DNS 相关测试