python招聘杭州拉勾网_Python拉勾网职位分析-Pyecharts

一、简介

本文中主要通过Python爬取了拉勾网的职位信息,包括城市,公司名称,福利待遇,工作地点,学历要求,工作类型,发布时间,职位名称,薪资,工作年限;并使用了pyecharts进行交互性的图表分析。

pyecharts 是百度开源的一个数据可视化 JS 库,主要用于数据可视化。pyecharts 是一个用于生成 Echarts 图表的类库。实际上就是 Echarts 与 Python 的对接。

二、数据爬取

下面是所爬取的一系列变量。

information.append(job['positionId']) # 岗位对应 ID

information.append(job['city']) # 岗位对应城市

information.append(job['companyFullName']) # 公司全名

information.append(job['district']) # 工作地点

information.append(job['education']) # 学历要求

information.append(job['firstType']) # 工作类型

information.append(job['formatCreateTime']) # 发布时间

information.append(job['positionName']) # 职位名称

information.append(job['salary']) # 薪资

information.append(job['workYear']) # 工作年限

information.append(job['companySize']) # 公司规模

information.append(job['financeStage']) # 融资规模

information.append(job['positionAdvantage']) # 福利待遇

information.append(job['createTime']) # 创建时间

information.append(job['positionLables']) # 职位标签

在这里我选择爬取和数据分析相关的职位,一共50页。如果对其他职位进行分析,仅需要修改关键字,后面的可视化步骤基本一致。

抓取结果如图:

三、数据分析

各城市对数据分析岗位的需求量

counts_city=df['城市'].value_counts().sort_values(ascending=True) #不同城市需求量

from pyecharts import Bar

bar = Bar("各城市对数据分析岗位的需求量",height=600)

bar.add("", counts_city.index,counts_city, mark_point=["max"],is_convert=True)

bar.render('各城市对数据分析岗位的需求量.html')

从招聘信息的所在地来看,对数据分析师岗位需求量较大的是四个一线城市以及新一线城市杭州,其中北京和上海分别位列前两位。除了北上广深和杭州外,其他热门城市的需求并不大,所以,如果你想找数据分析相关的工作,最好还是去一线城市寻找相应的机会。

不同规模公司的用人需求差异

scale=['15人以下','50-150人','150-500人','500-2000人','2000人以上']

scale_salary=df.groupby('公司规模')['最小薪资'].count().sort_values(ascending=False)

from pyecharts import Bar

bar = Bar("各规模公司用人需求")

bar.add("", scale_salary.index,scale_salary,is_label_show = True,

)

bar.render('各规模公司用人需求.html')

可以发现2000人以上的大公司对于数据分析岗位的需求要远大于小公司,其次500-2000人和150-500人的用人需求差距并不大。

学历要求

counts_Edu=df.groupby('学历要求')['学历要求'].count() #不同学历分组计数

from pyecharts import Pie

pie = Pie("学历要求",title_text_size = 25)

pie.add("", counts_Edu.index, counts_Edu, is_label_show=True,

)

pie.render('学历要求.html')

其实可以看到,数据分析这个岗位对学历的要求并不是很高,绝大部分岗位的要求都是本科即可,其次有6.93%的数据分析岗位并不在意学历。

那么现在数据分析这个岗位的薪水是个什么水平呢?

#取薪资区间最小薪资

def avg_salary(salary):

salary_list = salary.split('-')

salary_min = salary_list[0][:-1]

return salary_min

df['最小薪资'] = df['薪资'].apply(avg_salary).astype(int)

各城市数据分析岗位的薪资状况

counts_salary=df.groupby('城市')['最小薪资'].mean().round() #按城市分组 统计中位数

counts_salary=counts_salary.sort_values(ascending=False) #排序

from pyecharts import Bar

bar = Bar("各城市薪资状况",width=1400)

bar.add("均值", counts_salary.index,

counts_salary,

mark_point=["max"],

xaxis_type = 'category',

datazoom_type = 'inside',

yaxis_formatter ='K',

)

bar.render('各城市薪资状况.html')

我们可以发现在数据分析这个岗位上,北京、上海、东莞处于第一梯队,月均薪水都超过了15k,佛山、南京、深圳以及杭州位列第二梯队,月均薪水在15k左右,其他城市则处于第三梯队。其中令我比较好奇的是广州的平均薪水,作为四大一线城市之一,虽然生活成本比其他一线城市略低,但均薪却被其他三个兄弟甩了一截。

北上广深杭数据分析岗位薪资分布

city=['北京','上海','广州','深圳','杭州']

work_yr=range(1,51,1)

df2=pd.DataFrame(columns=work_yr)

for j in city:

df1=df[df['城市']==j]

df2.loc[j] = df1.groupby('最小薪资')['最小薪资'].count().astype(int)

df2 = df2.fillna(0)

df2 = df2.astype(int)

df2

from pyecharts import Line

line = Line('北上广深杭数据分析岗位薪资分布',width=1800)

line.add(

"北京",

df2.columns,

df2.loc['北京'],

area_opacity=0.6,

is_fill=True,

symbol=None,

is_smooth=True,

xaxis_force_interval =10

)

line.add(

"上海",

df2.columns,

df2.loc['上海'],

is_fill=True,

area_opacity=0.6,

symbol=None,

is_smooth=True,

xaxis_force_interval = 10

)

line.add(

"广州",

df2.columns,

df2.loc['广州'],

is_fill=True,

area_opacity=0.6,

symbol=None,

is_smooth=True,

xaxis_force_interval = 10

)

line.add(

"深圳",

df2.columns,

df2.loc['深圳'],

is_fill=True,

area_opacity=0.6,

symbol=None,

is_smooth=True,

xaxis_force_interval = 10

)

line.add(

"杭州",

df2.columns,

df2.loc['杭州'],

is_fill=True,

area_opacity=0.6,

symbol=None,

is_smooth=True,

xaxis_force_interval = 10

)

line.render('北上广深杭数据分析岗位薪资.html')

接下来,我绘制了北上广深杭的薪资分布图,看看这5个城市数据分析岗位薪资的具体分布。

从5个城市的薪资分布来看,5个城市的分布都较为接近,其中广州在5-8k占比要多于其他城市。主要薪资梯队为15K和20K,第二薪资梯队为10K和25K。

那会不会是因为广州的招聘信息中,工作经验要求低的岗位占比较高而拉低了整体的薪资水平呢?。

北上广深杭工作经验与薪水(均值)热力图

city=['北京','上海','广州','深圳','杭州']

work_yr=['应届毕业生','1年以下','1-3年','3-5年', '5-10年', '10年以上', '不限' ]

df2=pd.DataFrame(columns=work_yr)

for j in city:

df1=df[df['城市']==j]

df2.loc[j] = df1.groupby('工作年限')['最小薪资'].mean().round()

df2

from pyecharts import HeatMap

list1=[]

for i in range(0,7):

for j in range(0,5):

list1.append([i,j,df2.iat[j, i]])

heatmap = HeatMap('北上广深杭工作经验与薪水(均值)的关系')

heatmap.add(

"",

df2.columns,

df2.index,

list1,

is_visualmap=True,

is_label_show = True,

label_pos = 'inside',

visual_range=[0, 45],

visual_text_color="#000",

visual_orient="horizontal",

)

heatmap.render('北上广深杭工作经验与薪水(均值)的关系.html')

带着上面的疑惑,我绘制了热力图进行进一步的分析,图中的空白部分表示该部分是缺失值。

从横向对比来看,可以明显的看出,随着资历的增加,数据分析师的薪水也会相应提高。

值得注意的是,杭州对于应届毕业生的月均薪水到达了15K。考虑到深圳和上海都为缺失值,很有可能大部分校招岗位并不在拉勾网进行招聘,杭州的月均薪水可能并不具有代表性。

对有5-10年经验的数据分析师,若符合企业的招聘条件,在北上深杭基本平均而言都能拿到20k及以上的薪水。纵向对比来看,广州在各个经验段上的薪资均不及其他三个一线城市,而且差距还不小。所以,广州给的钱确实少。(但还应该结合生活成本进行综合考虑)

由于本文中选择的均为最低薪资,实际薪水还要高于报告中的数值。

福利待遇词云

除了用人需求和薪资,让我们再来看一下,各公司除了薪资以外还提供哪些福利待遇呢?

df3=df['福利待遇'].str.split(r'[,、 ,;]').apply(pd.Series, 1).stack() #分词

from pyecharts import WordCloud

wrdcld=df3.groupby(df3).count()

wordcloud = WordCloud(width=1300, height=620)

wordcloud.add("", wrdcld.index, wrdcld, word_size_range=[20, 100])

wordcloud.render('福利待遇词云.html')

从词云能够发现,大部分公司愿意提供五险一金或六险一金,带薪年假,弹性工作以及周末双休等福利来吸引求职者。

总结对数据分析师有较大需求的主要还是一线城市,且主要需求来源于中大型公司。

从薪水上看,北京、上海、东莞处于第一梯队,月均薪水都超过了15k,佛山、南京、深圳以及杭州位列第二梯队,月均薪水在15k左右,广州作为一线城市在薪资上并无优势。

杭州对应届毕业生的薪资要高于一线城市。数据分析岗位如果希望薪水超过20k,经验是一个较大的门槛。

大部分公司最常提供五险一金或六险一金,带薪年假,弹性工作以及周末双休等福利来吸引求职者。

Python络爬虫与推荐算法新闻推荐平台:络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值