当前位置:   article > 正文

大数据毕业设计:python招聘数据分析可视化系统+爬虫(源码+文档)

大数据毕业设计:python招聘数据分析可视化系统+爬虫(源码+文档)

博主介绍:✌全网粉丝10W+,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久,选择我们就是选择放心、选择安心毕业✌

毕业设计:2023-2024年计算机专业毕业设计选题汇总(建议收藏)

毕业设计:2023-2024年最新最全计算机专业毕设选题推荐汇总

1、项目介绍

python +Flask框架、Echarts可视化、智联招聘、requests 爬虫、招聘信息数据分析可视化
本数据集来源于智联招聘平台,主要包含职位名称、公司名称、薪资、地点、工作经验、学历要求、公司类型、公司人数、技能要求等数据特征

2、项目界面

(1)工作经验要求和学历要求分析

在这里插入图片描述

(2)技能词云图

在这里插入图片描述
(3)不同城市薪资分布
在这里插入图片描述

(4)公司规模分析

在这里插入图片描述

(5)招聘全国城市分布
在这里插入图片描述

(6)数据采集页面

在这里插入图片描述

3、项目说明

Flask框架智联招聘requests爬虫的招聘数据分析系统是一个基于Python的Web应用程序,用于从智联招聘网站上爬取招聘数据,并对这些数据进行分析和展示。

该系统使用Flask框架作为后端开发工具,利用其简洁灵活的特性和丰富的扩展库来构建Web应用。通过使用Flask,我们可以轻松地搭建一个功能完善的招聘数据分析系统。

在系统的核心部分,我们使用了requests库来发送HTTP请求,并通过模拟浏览器的行为,从智联招聘网站上获取招聘数据。requests库提供了简单易用的API,使我们能够方便地进行网络数据的获取和处理。

爬取到的招聘数据将被存储在系统的数据库中,以便进行后续的分析和展示。我们可以使用SQLAlchemy等工具来管理数据库,实现数据的持久化和查询。

在数据分析方面,我们可以利用Python的数据分析库(如pandas、numpy等)对招聘数据进行统计和分析。通过这些库,我们可以对招聘数据进行筛选、排序、聚合等操作,从而得出有价值的洞察和结论。

最后,我们可以使用Flask框架提供的模板引擎和前端技术(如HTML、CSS、JavaScript等)来展示分析结果。系统可以提供各种可视化图表和表格,帮助用户更直观地了解招聘数据的特征和趋势。

总之,Flask框架智联招聘requests爬虫的招聘数据分析系统是一个功能强大、易用性高的应用程序,帮助用户从智联招聘网站上爬取、分析和展示招聘数据,为招聘行业提供有价值的参考和决策支持。

4、核心代码

#!/usr/bin/python3
# -*- coding: utf-8 -*-

import collections

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

plt.rcParams['font.sans-serif'] = ['Heiti TC']  # 指定默认字体:解决plot不能显示中文问题
plt.rcParams['axes.unicode_minus'] = False  # 解决保存图像是负号'-'显示为方块的问题
import re
import os
import seaborn as sns
from wordcloud import WordCloud

citys = ['上海', '北京', '广州', '深圳', '天津', '武汉', '西安', '成都', '南京', '杭州', '重庆', '厦门']
kw = 'python'  #爬虫时用的关键字

# 数据清洗:

def data_clear():
    for i in citys:
        del_indexs = []
        city = i
        file_name = 'data_ori/' + i + f'-{kw}.csv'
        df = pd.read_csv(file_name, index_col=0)

        for i in range(0, df.shape[0]):

            s = df.loc[[i], ['salary']].values.tolist()[0][0]

            if re.search('(.*)-(.*)', s):
                a = re.search('(.*)-(.*)', s).group(1)
                if a[-1] == '千':
                    a = eval(a[0:-1]) * 1000
                elif a[-1] == '万':
                    a = eval(a[0:-1]) * 10000
                b = re.search('(.*)-(.*)', s).group(2)
                if b[-1] == '千':
                    b = eval(b[0:-1]) * 1000
                elif b[-1] == '万':
                    b = eval(b[0:-1]) * 10000
                try:
                    s = (a + b) / 2
                except:
                    del_indexs.append(i)
                    print(a)
                    print(b)
                    continue
                df.loc[[i], ['salary']] = s
            else:
                df.loc[[i], ['salary']] = ''

        df.drop(del_indexs,inplace=True)
        # os.remove(file_name)
        new_file_name = 'data/' + city + f'-{kw}.csv'
        df.to_csv(new_file_name)


#数据清洗
if __name__ == "__main__":
    data_clear()




  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/435909
推荐阅读
相关标签