文章目录

  • 前言
  • 一、准备我们的库
  • 二、数据清洗
  • 三、核密度图及词云制作
  • 四、完整代码
  • 五、扩展

上一篇:什么你还不知道招聘信息,小唐来教你——最新2021爬取拉勾网招聘信息(一)
下一篇:没有拉!


前言

既然我们上面已经爬取到我们的数据了,这下怎么说都要对他经行一个数据分析和词云制作了吧,在这里小唐主要是就他的数据清洗和词云制作来说一下

一、准备我们的库

import pandas as pd
import re
import seaborn as sns
import matplotlib.pyplot as plt
from wordcloud import WordCloud
import cv2
#这里是为了让我们的中文可以显示出来
font = r'C:\Windows\Fonts\simfang.ttf'
plt.rcParams['font.sans-serif'] = ["SimHei"]
plt.rcParams["axes.unicode_minus"] = False

二、数据清洗

由于我们工资都是给定一个范围,所以说,我们要对他求一个平均值,在这里我们用正则表达式来识别

def ciyun():df = pd.read_excel('工程师.xls')#这个就是我们要分析的表for i in range(df.shape[0]):gz = df.loc[i, '工资']#选择工资那一列if re.search(r'.*k-.*k', gz):a = eval(re.search('(.*)k-(.*)k', gz).group(1)) * 1000b = eval(re.search('(.*)k-(.*)k', gz).group(2)) * 1000num = (a + b) / 2#求平均值try:df.loc[i, '工资'] = int(num)/1000except:print("跳过")df.loc[i, '工资'] =0visualization(df)#将我们洗好的数据传到我们下一个制作图表里面

三、核密度图及词云制作

def visualization(df):salarys=df['工资']for i in salarys:print(i)mean = round(salarys.mean(), 1)#求我们的平均值plt.figure(figsize=(8, 6), dpi=200)#确定下来我们的行列数sns.distplot(salarys, hist=True, kde=True, kde_kws={"color": "r", "linewidth": 1.5, 'linestyle': '-'})#画核密度图plt.axvline(mean, color='r', linestyle=":")#在中间值那里画一条红线plt.text(mean, 0.05, '平均月薪: %.1f千' % (mean), color='k', horizontalalignment='center', fontsize=15)#在红线中间输出中间值是多少plt.xlim(0, 35)plt.xlabel('月薪(单位:千)')plt.title('工程师行业的薪资分布')plt.show()a = df['需求']#这里可以更改,可以显示地区呀,需求呀的词云text = []n = 0#统计词频for i in a:text.append(i)n += 1text = ",".join(str(i) for i in text)mask = cv2.imread(r'D:\data\timg.jpg')#这个是我们的要他形成的一个形状,没有的话可以删掉这一行,记得后面的mask也要删掉喔wordcloud = WordCloud(font_path=font, background_color="white", mask=mask).generate(text)plt.imshow(wordcloud, interpolation='bilinear')plt.axis('off')plt.show()


四、完整代码

import pandas as pd
import re
import seaborn as sns
import matplotlib.pyplot as plt
from wordcloud import WordCloud
import cv2
font = r'C:\Windows\Fonts\simfang.ttf'
plt.rcParams['font.sans-serif'] = ["SimHei"]
plt.rcParams["axes.unicode_minus"] = False
def ciyun():df = pd.read_excel('工程师.xls')for i in range(df.shape[0]):gz = df.loc[i, '工资']if re.search(r'.*k-.*k', gz):a = eval(re.search('(.*)k-(.*)k', gz).group(1)) * 1000b = eval(re.search('(.*)k-(.*)k', gz).group(2)) * 1000num = (a + b) / 2try:df.loc[i, '工资'] = int(num)/1000except:print("跳过")df.loc[i, '工资'] =0visualization(df)
def visualization(df):salarys=df['工资']for i in salarys:print(i)mean = round(salarys.mean(), 1)plt.figure(figsize=(8, 6), dpi=200)sns.distplot(salarys, hist=True, kde=True, kde_kws={"color": "r", "linewidth": 1.5, 'linestyle': '-'})plt.axvline(mean, color='r', linestyle=":")plt.text(mean, 0.05, '平均月薪: %.1f千' % (mean), color='k', horizontalalignment='center', fontsize=15)plt.xlim(0, 35)plt.xlabel('月薪(单位:千)')plt.title('工程师行业的薪资分布')plt.show()a = df['需求']text = []n = 0for i in a:text.append(i)n += 1text = ",".join(str(i) for i in text)wordcloud = WordCloud(font_path=font, background_color="white").generate(text)plt.imshow(wordcloud, interpolation='bilinear')plt.axis('off')plt.show()ciyun()

五、扩展

什么!居然还可以扩展!咱就是说小唐去做了一个界面,有需要的可以直接私信小唐,然后发你源码喔!

震惊,某高校男子考前考打代码复习四六级 网络爬虫真好玩

什么你还不知道招聘信息,小唐来教你——最新2021爬取拉勾网招聘信息(二)相关推荐

  1. 什么你还不知道招聘信息,小唐来教你——最新2021爬取拉勾网招聘信息(一)

    文章目录 前言 一.准备我们的库 二.分析分析 三. 代码 四.数据展示 小唐的心路历程 上一篇:没有啦! 下一篇:什么你还不知道招聘信息,小唐来教你--最新2021爬取拉勾网招聘信息(二) 前言 有 ...

  2. Python搭建代理池爬取拉勾网招聘信息

    先来看一张图了解下爬虫 实现功能 多线程爬取拉勾网招聘信息 维护代理 ip 池 搭建 node 服务器 Taro 使用 echarts 做数据分析 1.多线程爬取拉勾网招聘信息 Tip:涉及知识 1. ...

  3. Python爬虫实战之一 - 基于Requests爬取拉勾网招聘信息,并保存至本地csv文件

    Python爬虫实战之二 - 基于Requests抓取拉勾网招聘信息 ---------------readme--------------- 简介:本人产品汪一枚,Python自学数月,对于小白,本 ...

  4. 【python爬虫02】使用Scrapy框架爬取拉勾网招聘信息

    使用Scrapy框架爬取拉勾网招聘信息 最近接触了Scrapy爬虫框架,简单写了个爬虫爬取拉钩网的招聘信息,加深对Scrapy框架的理解,不得不说Scrapy框架其实还是蛮方便的,就像爬虫流水线一样, ...

  5. java爬虫拉勾网_[Java教程]node.js爬虫爬取拉勾网职位信息

    [Java教程]node.js爬虫爬取拉勾网职位信息 0 2017-03-14 00:00:21 简介 用node.js写了一个简单的小爬虫,用来爬取拉勾网上的招聘信息,共爬取了北京.上海.广州.深圳 ...

  6. scrapy 爬取拉勾网职位信息

    需求:1.使用python爬虫框架,爬取拉勾网职位信息, 2.将爬取的职位信息存储到json格式的文件中 3.将爬取的数据进行数据分析 1.图片中的链接是职位列表页的链接,进行翻页,该链接没有变化,无 ...

  7. 爬虫实战之全站爬取拉勾网职位信息

    全站爬取拉勾网职位信息 一.环境 window7 scrapy MySQL 二.简介 scrapy的全站爬取方式crawlspider跟其通用爬取方式spider实现上有一定的区别,两者都有各自的优势 ...

  8. python3 scrapy实战:爬取拉勾网招聘数据至数据库(反爬虫)

    首先注明:感谢拉勾网提供的权威.质量的数据,本人抱着学习的态度,不愿增加其服务器负担,与dos攻击. 由于后面准备做一个大一点的数据分析项目,所以前提需要获取大量的有质量和权威的信息,其中一个获取点便 ...

  9. 2021最新 python爬取12306列车信息自动抢票并自动识别验证码(三)购票篇

    项目前言 tiebanggg又来更新了,项目--[12306-tiebanggg-master]注:本项目仅供学习研究,如若侵犯到贵公司权益请联系我第一时间进行删除:切忌用于一切非法途径,否则后果自行 ...

最新文章

  1. 权限表管理之获取用户权限表列表数据
  2. SegICP:一种集成深度语义分割和位姿估计的框架(附代码)
  3. vs-halcon-大恒相机配置
  4. Codeforces 494E. Sharti
  5. 【8-20】java学习笔记02
  6. Hook的两个小插曲
  7. MemCache在tomcat中的负载均衡和session交叉存放
  8. RPC框架的实现原理是什么?-开课吧
  9. 创建loop15设备挂载镜像文件(.img)
  10. 微服务架构实战(四):服务发现的可行方案以及实践案例
  11. LaTeX 修改中文摘要名字
  12. C语言的5种简单排序算法
  13. dts音效大师安卓版_dts音效大师
  14. STM32 NPN与PNP检测电路
  15. 白色用rgba怎么设置html,在白色上将RGB转换为RGBA
  16. c语言三角形的周长和面积公式,计算三角形的周长和面积
  17. 药品大数据公司都有哪些?
  18. 单片机原理与应用技术(三)———动态数码管显示汇编语言
  19. 《自己动手设计物联网》已在各大书城有售
  20. 国内首发|云沃客软件众包发展指数报告

热门文章

  1. android闹钟 失效,Android闹钟启动时间设置无效问题的解决方法
  2. 韩国3D艺术家 hyeong-hoon lim 性感女战士 3D角色
  3. BI大数据到底是什么
  4. GPU: 衡量计算效能的正确姿势(2)
  5. 【IoT】红外循迹避障小车
  6. php 如何获取文件类型,php怎么通过一个Url获得文件类型(后缀名)?
  7. 计算机图形学完整笔记(一):图形学概论
  8. CTSC 2018 酱油记
  9. PTA基础编程题 7-1 厘米换算英尺英寸(详细解答)
  10. x-bov16 firmware android,NW-BM85-000