一、内容框架 (一)主要内容 论文按照项目的研究内容及技术路线,分为六章进行论述: 第一章为概述,介绍了数据可视化和招聘网站的研究背景以及研究意义,分析了数据可视化和招聘技术的发展,对论文的研究内容做出阐述,最后简述了本文的章节安排。 第二章为招聘数据可视化以及相关职位推荐系统使用的相关技术简介,简要地描述了该系统的开发所涉及到的技术,并对其前后端的接口和结构进行了简要的描述。介绍了项目使用到的Python开发语言、Django开发框架以及Echarts可视化作图工具等。 第三章为招聘数据可视化以及相关职位推荐系统分析与设计,包括:可行性分析,功能需求分析,系统性能分析,系统流程设计以及职位推荐系统后端的数据库设计。 第四章为招聘数据爬取与数据可视化,包括对招聘网址职位信息数据的爬取及数据清洗流程,以及根据爬取的职位数据通过Echarts可视化作图工具进行可视化分析,最终呈现在系统页面上。 第五章为职位推荐系统具体功能的实现,包含用户注册登录、通过公司名称和职位名称关键字的查询功能的实现与展示,还有使用协同过滤算法进行用户职位推荐。 第六章为总结与展望,对本文的研究工作进行了归纳总结和展望,并对本文存在的问题和不足之处进行了阐述。 (二)设计(研究)思路 1绪论 1.1 论文研究背景 1.2 研究的意义 1.3 国内外研究现状 1.4 论文主要研究内容 2相关技术介绍 2.1 Python开发语言。由于Python语言的代码简洁,简单易学,并且具有许多不同功能的框架和强大的第三方标准库,因此Python也成为编写网络爬虫使用最为广泛的一种语言。 2.2网络爬虫 2.3 Echarts可视化作图工具。ECharts可视化框架学习资料更多,学习起来更容易,让人更容易理解。 2.4 Django开发框架。Django框架是一个用Python语言编写的,开放性源代码的Web应用框架。 2.5 本章小结 3 系统需求分析 3.1 功能性需求分析。数据采集和存储,数据处理分析,可视化展示,用户注册登录,职位搜索,职位推荐。 3.2 非功能性需求分析。易用性、安全性、可靠性。 3.3 本章小结 4 数据爬取与可视化 4.1 数据获取。首先要了解爬取招聘网站的结构,以及反爬虫机制,主要是从招聘网站的职位信息页以及职位详情页面获取相关的招聘数据。 4.2 数据导入。利用爬虫爬取下来的数据信息可以保存到MongoDB或者其他数据库中。 4.3 数据处理。数据清洗删除空缺值和重复值,统一数值单位等。 4.4 数据可视化。使用Echarts可视化作图工具绘制学历要求柱状图,福利占比饼状图,岗位词云图等等。 4.5 本章小结 5 系统实现 5.1 注册登录。新用户必须注册,输入用户名、密码进行注册。 5.2 职位搜索。用户进入职位推荐系统的查询页面后,可以输入职位名称或公司名称进行信息的查询。 5.3 职位推荐。通过用户的浏览记录,使用协同过滤算法进行用户职位推荐。 5.4 本章小结 6总结与展望 6.1 总结 6.2 展望
主要功能板块
平台预期用户如下: (1)管理员 管理员的主要任务是进行系统配置、基础数据初始化,爬取的岗位信息的增删改查、留言反馈管理、系统简介管理。 (2)用户(即求职者) 用户可以浏览平台中已发布的岗位信息,包括薪资、地点、公司信息等主要内容,求职者要进行注册。 网站主要功能模块如下: (1)岗位信息增删改查 对于平台上爬取到的岗位信息,后期可以进行增删改查。 (2)增加首页岗位推荐功能。 对于登录注册的用户进入网站后可以看到热门岗位的推荐,可以是词云或者其他形式进行推荐,用户点击相应的岗位就可以查看到岗位信息。 (3)岗位搜索以及筛选功能。 用户可以通过关键词进行所需岗位的搜索,以及可以通过筛选功能,比如学历条件,岗位要求的本科或专科之类的;或者是通过薪资进行筛选,月收入4k以上之类的 。 (4)岗位信息评论、点赞、踩、收藏(查看其他会员的评论信息,登录后发布岗位评论)。 (5)查看系统简介、查看招聘资讯。 (6)信息反馈。 (7)对于爬取的岗位信息要进行可视化,在主页展示出来。 可视化大屏: (1)薪资情况:通过选择学历来查看各种岗位对于不同学历的薪资可视化情况,以柱状图、饼图的形式来展示各种职位的薪资分布、所占比例,提供给用户在找工作是作为参考。 (2)企业情况:通过选择职位可以来查看这个职位的主要招聘城市,还可以大概查看一下这个职位的公司规模情况,以及每个职位在各个主要城市所占的比例饼图。 (3)福利情况:通过数据可视化速览公司福利,基于词云进行构造,可以清晰看出所有公司最核心的福利待遇 。 (4)学历情况:可以查看各个职位对学历以及工作经验的要求,以条形图、矩形树的形式进行可视化展示。 。 网站技术大概简述:1、使用用爬虫技术爬取岗位信息;2、采用基于django的轻量级Web应用框架;3、招聘信息的存储数据库采用MySQL设计;4、主页增加热门岗位词云形式推荐;5、使用ECharts进行招聘信息的数据可视化显示。
标红部分如果做不了,换成其他的可视化 二、研究方法
- 文献研究法。通过查阅数据可视化相关文档和文献,我了解到实现可视化可以使用ECharts、Plotly和D3.js这三种可视化框架,这三种框架都是开源免费的,使用较为方便,都支持大型数据集。
- 调查研究法。通过对拉勾网、前程无忧和智联招聘等招聘网站的调查,发现拉勾网的反爬虫策略最多,并且还包括了前程无忧和智联招聘的反爬虫策略,所以我初步决定从智联招聘网站爬取数据。 三、资料准备情况 1.已查阅了解了国内外此课题研究现状,并保存了关于可视化的文档。通过对这些文档中实现可视化技术的比较,我发现ECharts可视化框架是最合适的,相对于Plotly可视化框架可选择图表类型非常少,ECharts可视化框架学习资料更多。相对于D3.js可视化框架,ECharts可视化框架学习起来更容易,让人更容易理解。
- 已将同类型架构实验研究保存以备借鉴了解。通过参考多类数据爬取相关文档了解了多种反爬虫策略,学习到了多种对应的爬虫策略,可以通过构建请求头的方法解决,也可以利用Python的第三方库my_fake_useragent随机生成User-Agent来进行切换,随机性强且使用方便,可以随意变换headers请求头。
参考文献: [1]王文选.依托Python爬虫技术和数据处理分析能力提升履职能力的探索[J].金融科技时代,2022,30(11):62-64+77. [2]王辛浩,单艳.探究Python语言下网络爬虫的技术特点及应用[J].数字技术与应用,2022,40(10):85-87.DOI:10.19695/j.cnki.cn12-1369.2022.10.26. [3]刘萍.基于Python爬虫技术的网页数据抓取方法[J].信息与电脑(理论版),2022,34(14):169-171. [4]洪丽华,周卫红,黄琼慧.基于Python的数据可视化研究[J].科技创新与应用,2022,12(33):36-40.DOI:10.19981/j.CN23-1581/G3.2022.33.009. [5]黄浩.浅述利用Python+Flask+ECharts设计实现医疗数据可视化大屏展示[J].数字技术与应用,2022,40(09):200-202.DOI:10.19695/j.cnki.cn12-1369.2022.09.60. [6]刘洋,胡志高.基于Python的网站访问数据可视化方法[J].信息与电脑(理论版),2022,34(10):26-28. [7]邓慈云,马孝杰.Python电影数据采集和可视化系统研究[J].网络安全技术与应用,2022(11):46-48. [8]Journal of Physics: Conference SeriesVolume 2033, Issue 1. 2021. [9]International Journal of Advanced Network, Monitoring, and ControlsVolume 5, Issue 2. 2020. PP 64-70 [10]王扬,田野,李铁山等.基于Gephi的航运招聘信息可视化分析[J.大数据,2018(03):81-91. [11]高强,张凤荔,王瑞锦,周帆.轨迹大数据:数据处理关键技术研究综述[J.软件学报,2017,28(04):959-992.