您现在的位置: 主页 > 上位机技术 > python > Python or Java?Boss直聘告诉你该如何选择
本文所属标签:
为本文创立个标签吧:

Python or Java?Boss直聘告诉你该如何选择

来源:admin 网络用户发布,如有版权联系网管删除 2018-10-23 

点击上方“程序人生”,选择“置顶公众号”

第一时间关注程序猿(媛)身边的故事


作者

Don Lex

已获原作者授权,如需转载,请联系原作者。



前言


“人生苦短,我用 Python”,Python 的经典 slogan 讲究争分夺秒,并且在 9月的TIOBE榜中拿下第 3 名宝座。

今天就试着在Boss直聘网站上爬取python和java的招聘信息,比较一下两个方向的发展前(钱)途,为本科生的就业方向给一个小小的建议。

爬取


在招聘网站上直接以”本科生”和”java”或”python”作为筛选条件,以广州为例:

(网站页面)

爬取招聘的大体信息,具体代码:

 1frombs4importBeautifulSoup
2importrequests
3importpymongo
4
5client=pymongo.MongoClient('localhost',27017)
6zhipin=client['zhipin']
7zhipin_java=zhipin['zhipin_java']
8zhipin_python=zhipin['zhipin_python']
9
10
11headers={
12'user-agent':'Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/60.0.3112.78Safari/537.36',
13'accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
14}
15
16total_page=11
17
18
19defget_info(param,data_table):
20'''
21根据招聘方向(java或python..)爬取信息存进数据库
22:paramparam:招聘方向
23:paramdata_table:数据库表明
24:return:
25'''

26foriinrange(1,total_page):
27url='https://www.zhipin.com/c101280100/d_203-h_101280100/?query={0}&page={1}'.format(
28param,i)
29web_data=requests.get(url,headers=headers)
30soup=BeautifulSoup(web_data.content,'lxml')
31foriteminsoup.select('#main>div>div.job-list>ul>li'):
32#招聘要求
33job_title=item.select('.job-title')[0].text#岗位
34salary=item.select('.red')[0].text#薪资
35person_info=item.select('.info-primaryp')[0].text#应聘要求
36#获取公司信息
37company=item.select('.info-companyh3a')[0].text#公司
38company_info=item.select('.info-companyp')[0].text#公司信息
39
40data={
41'job_title':job_title,
42'salary':salary,
43'person_info':person_info,
44'company':company,
45'company_info':company_info,
46}
47#插入数据库
48data_table.insert(data)
49print(data)
50print('*'*100)
51print('n'*5)
52
53
54if__name__=='__main__':
55param_list=['java','python']
56table_list=[zhipin_java,zhipin_python]
57forparam,tableinzip(param_list,table_list):
58get_info(param,table)

爬取的信息全部存在mongodb中,便于后面的分析处理。

数据清洗


在数据处理这里定义了几个方法,用来处理相应的内容。

1.初始变量
1importpymongo
2client=pymongo.MongoClient('localhost',27017)
3zhipin=client['zhipin']
4zhipin_java=zhipin['zhipin_java']
5zhipin_python=zhipin['zhipin_python']
6
7fromcollectionsimportCounter
8frompyechartsimportBar,Line,Pie
2.获取地区分布情况
 1importre
2defget_zone():
3'''获取地区'''
4zone_list=[]
5real_list=[]
6foriteminzhipin_java.find():
7text=item['person_info'][3:6]
8zone_list.append(text)
9foriinzone_list:
10j=re.sub(r'd-','',i)
11real_list.append(j)
12while''inreal_list:
13real_list.remove('')
14returnreal_list
15zone=dict(Counter(get_zone()))
3.整理招聘数据
1defdel_key_1():
2'''删除招聘次数为1的岗位'''
3li=[]
4forkeyinjob_dict.keys():
5ifjob_dict[key]==1:
6li.append(key)
7foriinli:
8deljob_dict[i]
9print(job_dict)
4.整理薪水数据
 1defget_salary():
2'''获取招聘的工资'''
3min_list=[]#起步工资
4max_list=[]#最高工资
5job_title=[]#岗位
6foriteminzhipin_java.find():
7job_title.append(item['job_title'])
8salary=item['salary']
9min_list.append(int(salary.split('-')[0][:-1]))
10max_list.append(int(salary.split('-')[1][:-1]))
11returnmin_list,max_list,job_title


数据可视化


通过整理地区分布数据,利用pyecharts作图。分别以下面4个方面进行比较:

  1. 地区分布

  2. 岗位情况

  3. 公司情况

  4. 薪水对比

一、不同区的招聘情况:

不难看出:越靠近城市中心的地区,招聘的岗位就越多,成功应聘的机会较高;番禺和天河区相差较大,其中天河区招python比java将近多8倍;番禺区java比python更加热门,受公司青睐;其他区相差不大

二、岗位情况

python岗位情况:

python岗位占比:

占比前五位分别是:

  1. python工程师

  2. 数据分析师

  3. 运维工程师

  4. 大数据开发工程师

  5. 游戏AI算法工程师

java岗位情况:


高级的工程师招聘的人数较少,大部分都是在招聘初中级工程师,难道这就是传说中的“一个诸葛亮胜过三个臭皮匠 (:”

三、公司情况

python招聘公司情况:

java招聘公司情况:

四、qian途 对比

最高薪水对比:

看来python的地位不是吹的,最高薪水也大多数都比java的高;java最高薪水平均19.24K,最低3K,最高60k;python最高薪水平均21.16K,最低也是3k,最高50k,比java稍低一点。

最低薪水对比:


python起步薪水大多数都比java的高;java平均起步薪水11.42K,python平均起步薪水12.08K

最后用两个岗位的词云来看一下:



总结


看了这么多,该怎么选,你懂得。虽然有点以偏概全,但是我相信只要能够在一个语言上做到极致,相信你的qian途会是一片光明的!!另外希望秋招的同学能够找到一份好工作!!

点击文末「阅读原文获取源码。


- The End -

「若你有原创文章想与大家分享,欢迎投稿。」

加编辑微信ID,备注#投稿#:

程序 丨 druidlost

小七 丨 duoshangshuang


上期精彩内容



              查看评论 回复



嵌入式交流网主页 > 上位机技术 > python > Python or Java?Boss直聘告诉你该如何选择
 招聘 情况 岗位

"Python or Java?Boss直聘告诉你该如何选择"的相关文章

网站地图

围观()