其他
Python实战|腾讯招聘你干什么?python可视化告诉你
需求分析
https://careers.tencent.com/home.html
如下所示找到网站展示url链接:
复制链接打开发现此链接为json格式数据集,所以我们第一步先要获取到这个json格式的数据集,然后循环获取内部的岗位信息。
发送请求
找到真实链接之后,我们就可以模拟浏览器访问网站,可以看到我们已经成功的获取到了此json格式的数据集。
url = f'https://careers.tencent.com/tencentcareer/api/post/Query?timestamp=1623410681974&countryId=&cityId=&bgIds=&productId=&categoryId=&parentCategoryId=&attrId=&keyword=&pageIndex=1&pageSize=10&language=zh-cn&area=cn'
headers= {
'referer': f'https://careers.tencent.com/search.html?index=1',
'user-agent': str(UserAgent().random)
}
resp = requests.get(url, headers = headers)
print(resp.json())
'''
{'Code': 200, 'Data': {'Count': 10006, 'Posts': [{'Id': 0, 'PostId': '1237621607640338432', 'RecruitPostId': 58544, 'RecruitPostName': '35933-司法协作经理(南京)', 'CountryName': '中国', 'LocationName': '南京', 'BGName': 'S1', 'ProductName': '', 'CategoryName': '法律与公共策略', 'Responsibility': '研究落实国家互联网政策和法律法规相关要求,协调业务做好合规工作;\n深入研究涉及网络犯罪的内在规律和发展趋势,为保护业务健康发展建立畅通外部沟通渠道;\n依据法律法规要求,建立并保持与执法机关的互动窗口,严格履行法律赋予的企业义务。\n\n', 'LastUpdateTime': '2021年06月12日', 'PostURL': 'http://careers.tencent.com/jobdesc.html?postId=1237621607640338432', 'SourceID': 1, 'IsCollect': False, 'IsValid': True}, {'Id': 0, 'PostId': '1269571935444934656', 'RecruitPostId': 62560, 'RecruitPostName': 'AQ-内容安全运营经理', 'CountryName': '中国', 'LocationName': '北京', 'BGName': 'S1', 'ProductName': '', 'CategoryName': '法律与公共策略', 'Responsibility': '与相关主管部门、行业组织等建立长期、良好的沟通和合作关系;\n及时了解、研究与公司业务相关的政策监管要求与行业发展趋势等,协助制定应对策略及方案,有效沟通相关情况,保障产品安全运营,推动行业健康发展;\n正确、及时传导政策监管要求,协助拟定解决方案,加强内部产品协同,降低安全运营风险。\n\n', 'LastUpdateTime': '2021年06月12日', 'PostURL': 'http://careers.tencent.com/jobdesc.html?postId=1269571935444934656', 'SourceID': 1, 'IsCollect': False, 'IsValid': True}, {'Id': 0, 'PostId': '1303145399837532160', 'RecruitPostId': 65853, 'RecruitPostName': '44327-微信安全运营经理(广州)', 'CountryName': '中国', 'LocationName': '广州', 'BGName': 'S1', 'ProductName': '微信', 'CategoryName': '法律与公共策略', 'Responsibility': '从法律法规及政策要求的角度出发,全流程跟进微信产品功能的开发设计,并根据产品特点与发展情况,动态评估安全风险,提供解决方案,对运营效果负责,保障产品可持续运营;\n协助相关团队应对、处理涉微信平台的安全突发或应急事件,推进完善运营规则及工作机制。', 'LastUpdateTime': '2021年06月12日', 'PostURL': 'http://careers.tencent.com/jobdesc.html?postId=1303145399837532160', 'SourceID': 1, 'IsCollect': False, 'IsValid': True}, {'Id': 0, 'PostId': '1303145400231796736', 'RecruitPostId': 65854, 'RecruitPostName': '44327-微信态势分析师(广州)', 'CountryName': '中国', 'LocationName': '广州', 'BGName': 'S1', 'ProductName': '微信', 'CategoryName': '法律与公共策略', 'Responsibility': '促进微信平台正向影响力合作生态,根据产品特征、政策法规要求、行业生态等开展分析,并推动项目策划与执行,持续提升平台正向价值;\n构建态势感知模型及分析方法,为风险治理整体解决方案提供专业参考。', 'LastUpdateTime': '2021年06月12日', 'PostURL': 'http://careers.tencent.com/jobdesc.html?postId=1303145400231796736', 'SourceID': 1, 'IsCollect': False, 'IsValid': True}, {'Id': 0, 'PostId': '1303145401032908800', 'RecruitPostId': 65856, 'RecruitPostName': '44327-微信安全风控经理(广州)', 'CountryName': '中国', 'LocationName': '广州', 'BGName': 'S1', 'ProductName': '微信', 'CategoryName': '法律与公共策略', 'Responsibility': '对侵害微信产品业务的违法违规行为开展体系化研究,为技术及运营团队提供综合治理解决方案,保护平台安全;\n对平台存在的各类风险问题进行评估分析,及时发现安全风险并制定、落实相应解决方案。', 'LastUpdateTime': '2021年06月12日', 'PostURL': 'http://careers.tencent.com/jobdesc.html?postId=1303145401032908800', 'SourceID': 1, 'IsCollect': False, 'IsValid': True}, {'Id': 0, 'PostId': '1303145401775300608', 'RecruitPostId': 65858, 'RecruitPostName': '44327-微信安全合规经理(广州)', 'CountryName': '中国', 'LocationName': '广州', 'BGName': 'S1', 'ProductName': '微信', 'CategoryName': '法律与公共策略', 'Responsibility': '深入了解和跟进互联网行业监管动态,围绕信息安全、数据安全、个人隐私等领域法律法规、政策标准,分析对微信平台的合规影响,协助制定和完善合规运营方案;\n推动微信业务的合规评估与风险分析,及时发现问题并制定解决方案,做好沟通联动并推进实施;\n建立安全合规机制,跟进合规要求的落实进步,并协调推动优化整改。', 'LastUpdateTime': '2021年06月12日', 'PostURL': 'http://careers.tencent.com/jobdesc.html?postId=1303145401775300608', 'SourceID': 1, 'IsCollect': False, 'IsValid': True}, {'Id': 0, 'PostId': '1351485887594110976', 'RecruitPostId': 72034, 'RecruitPostName': '44329-司法协作经理(重庆)', 'CountryName': '中国', 'LocationName': '重庆', 'BGName': 'S1', 'ProductName': '', 'CategoryName': '法律与公共策略', 'Responsibility': '研究落实国家互联网政策和法律法规相关要求,协调业务做好合规工作;\n深入研究涉及网络犯罪的内在规律和发展趋势,为保护业务健康发展建立畅通外部沟通渠道;\n依据法律法规要求,建立并保持与执法机关的互动窗口,严格履行法律赋予的企业义务。\n\n', 'LastUpdateTime': '2021年06月12日', 'PostURL': 'http://careers.tencent.com/jobdesc.html?postId=1351485887594110976', 'SourceID': 1, 'IsCollect': False, 'IsValid': True}, {'Id': 0, 'PostId': '1403534865667727360', 'RecruitPostId': 79061, 'RecruitPostName': '28601-微信支付交通行业产品策划经理', 'CountryName': '中国', 'LocationName': '深圳', 'BGName': 'WXG', 'ProductName': '', 'CategoryName': '产品', 'Responsibility': '1、负责微信支付停车场景的产品策划工作,为车主用户带来卓越的停车体验;\n2、能够深刻理解停车行业的运营模式和商业目标;\n3、挖掘商户具体诉求和痛点,通过针对性的行业解决方案,提升商户服务能力; \n4、结合并升级微信产品能力,联合行业商户、生态服务商等相关合作伙伴,结合商户侧的商业目标和运营诉求,不断为行业创造价值;\n5、挖掘腾讯内外各业务及行业资源,不断探索产品化解决方案,并推动跨团队合作,助力行业发展。', 'LastUpdateTime': '2021年06月12日', 'PostURL': 'http://careers.tencent.com/jobdesc.html?postId=0', 'SourceID': 1, 'IsCollect': False, 'IsValid': True}, {'Id': 0, 'PostId': '1372383269839970304', 'RecruitPostId': 74940, 'RecruitPostName': '21085-FPS电竞品牌经理', 'CountryName': '中国', 'LocationName': '深圳', 'BGName': 'IEG', 'ProductName': '腾讯游戏', 'CategoryName': '营销与公关', 'Responsibility': '负责《穿越火线》及《穿越火线:枪战王者》国际/职业/大众赛事体系及品牌搭建;\n负责赛事及赛事品牌策略策划及落地执行,包括但不仅限于赛事核心创意、素材、传播及内容、赛事落地活动把控及执行等工作; \n负责赛事及营销工作中的资源统筹,不断提升产品及赛事的影响力。', 'LastUpdateTime': '2021年06月12日', 'PostURL': 'http://careers.tencent.com/jobdesc.html?postId=1372383269839970304', 'SourceID': 1, 'IsCollect': False, 'IsValid': True}, {'Id': 0, 'PostId': '1371703908962934784', 'RecruitPostId': 74791, 'RecruitPostName': '21089-英雄联盟手游内容运营', 'CountryName': '中国', 'LocationName': '深圳', 'BGName': 'IEG', 'ProductName': '腾讯游戏', 'CategoryName': '内容', 'Responsibility': '负责制定手游作者引入策略、专项扶持策略,规划头部作者培养方案,进行优质内容引入、管理和分发,搭建健康稳健的手游内容创作生态;\n针对不同的宣发节点需求,制定特色内容运营和发行计划,助力整体产品发行。 同时持续完善和丰富整个内容生态,提升内容影响力;\n负责手游在内部社区以及外部平台的内容合作,搭建优质的PGC和PUGC内容生产机制以及渠道分发能力,打造精品标杆内容和热门专栏,打造爆款内容;\n持续拓展深度合作的手游内容作者以及机构数量,通过设置激励机制、搭建支持体系、制定推广计划、强化平台合作等方式,提升社区及全平台手游活跃作者数,进而提升整体内容质量;', 'LastUpdateTime': '2021年06月12日', 'PostURL': 'http://careers.tencent.com/jobdesc.html?postId=1371703908962934784', 'SourceID': 1, 'IsCollect': False, 'IsValid': True}]}}
'''
解析页面
# 获取所有的职位信息
jobs = resp.json()['Data']['Posts']
# 获取每一个岗位的内部信息
for job in jobs:
post_name = job['RecruitPostName'] # 职位名称
country_name = job['CountryName'] # 国家
loc_name = job['LocationName'] # 城市
category_name = job['CategoryName'] # 职位分类
last_up_time = job['LastUpdateTime'] # 职位更新时间
responsibility = job['Responsibility'] # 职位要求
'''
------------------正在爬取第1页数据------------------
38965-游戏社区视觉设计师 中国 深圳 设计 2021年06月12日 · 负责游戏社区产品UI、动效及运营相关设计,并结合反馈进行持续优化提升;
· 参与前期推导、设定整体视觉风格并执行跟进产品视觉呈现效果;
· 参与产品的创意设计和动态DEMO的实现;
· 参与团队的专业化建设和知识传播
-----正在采集第1条数据-----
TEG05-风控数据挖掘工程师 中国 深圳 技术 2021年06月12日 将机器学习等数据挖掘手段与流量风控、营销风控场景相结合,建立各类模型,服务流量、营销风控等业务场景;
基于海量的业务流量数据,应用业内成熟建模方案进行建模、迭代,提升风控技术水平和服务效果,并探索前沿算法的落地应用;
结合样本研究底层数据进行变量挖掘、特征组合,不断加入新的数据源以及变量提升模型性能;
结合业务场景进行流量风控画像,丰富刻画角度,提升准确率、覆盖率。
-----正在采集第2条数据-----
CB-高级翻译 中国 深圳 行政支持 2021年06月12日 Your key job responsibilities include, but are not limited to:
1. In order to build the company's global HR system, translate HR related systems, processes, tools and documents (mostly Chinese to English translations), undertake interpretation and other tasks during key meetings
2. Review and polish internal HR-related documents written in English
3. Receive and manage translated resources from third parties
-----正在采集第3条数据-----
15569-QQ飞车手游-高级系统策划 中国 深圳 产品 2021年06月12日 负责qq飞车手游系统设计,包含核心模块,目标系统、社交系统及各种功能系统;
系统设计过程中,关注功能、规则、表格设计、交互体验和视觉、听觉反馈;
设计过程中拥有一定的创新维度能力,以及拥有独立的思维逻辑和设计方法;
系统设计中对基础玩家情绪和情感有一定的理解和认知,有一定的细节设计;
跟进、分析统计数据,根据数据和反馈来制定后续优化方案并跟进具体开发;
关注自身产品以及同类竞品的运营状况,从用户侧理解用户痛点并解决问题。
-----正在采集第4条数据-----
15569-QQ飞车端游-系统策划 中国 深圳 产品 2021年06月12日 负责qq飞车端游系统设计,包含核心模块,目标系统、社交系统及各种功能系统;
系统设计过程中,关注功能、规则、表格设计、交互体验和视觉、听觉反馈;
设计过程中拥有一定的创新维度能力,以及拥有独立的思维逻辑和设计方法;
系统设计中对基础玩家情绪和情感有一定的理解和认知,有一定的细节设计;
跟进、分析统计数据,根据数据和反馈来制定后续优化方案并跟进具体开发;
关注自身产品以及同类竞品的运营状况,从用户侧理解用户痛点并解决问题。
-----正在采集第5条数据-----
21309-腾讯教育--腾讯课堂产品运营(深圳) 中国 深圳 营销与公关 2021年06月12日 1、负责站内资源管理及运营工作,包含站内广告资源、站内运营位排期等。
2、负责频道产品运营设计,梳理对应模块的产品功能和业务目标设定,通过有效的运营手段,维护产品生态,主导运营规划和设计方案的有效落地。
3、根据节庆营销规划,整合资源,以项目制形式协调跨部门合作,完成营销活动的策划和执行。
4、根据资源数据及用户分析,了解C端用户需求,通过匹配用户需求与平台资源实现场景数据增长。
-----正在采集第6条数据-----
TEG04-腾讯工蜂运维开发工程师(深圳) 中国 深圳 技术 2021年06月12日 负责容器集群的容量规划、模式改进、性能分析和优化等;
负责容器集群自动化运维支撑平台的设计和开发;
建立数据运营、故障管理体系,实现自动化、智能化运维,促进问题快速发现定位解决;
-----正在采集第7条数据-----
TEG04-腾讯工蜂SRE工程师(深圳) 中国 深圳 技术 2021年06月12日 负责容器集群的容量规划、模式改进、性能分析和优化等;
负责容器集群自动化运维支撑平台的设计和开发;
建立数据运营、故障管理体系,实现自动化、智能化运维,促进问题快速发现定位解决;
-----正在采集第8条数据-----
TEG04-腾讯乐享视觉设计师(深圳) 中国 深圳 设计 2021年06月12日 完成腾讯乐享平台、腾讯KM平台的产品体验和UI界面设计工作;
充分理解产品需求,与策划沟通界面风格以及交互体验,与研发沟通界面的优化方案;
参与整个设计过程中的评审,负责视觉还原走查,监督产品视觉的实现质量;
有良好的视觉风格的把控能力,能平衡把握现有产品在用户体验上的统一性。
-----正在采集第9条数据-----
35933-安全合规业务经理(深圳) 中国 深圳 法律与公共策略 2021年06月12日 根据法律、法规、标准等合规要求,梳理各类业务风险,发现业务安全合规问题;
推动合规风险评估、治理及整改,建立安全合规机制,制定和落实安全合规措施;
研究安全法规、政策及标准发展趋势,保障公司业务安全健康发展。
-----正在采集第10条数据-----
------------------正在爬取第2页数据------------------
35933-司法协作经理(南京) 中国 南京 法律与公共策略 2021年06月12日 研究落实国家互联网政策和法律法规相关要求,协调业务做好合规工作;
深入研究涉及网络犯罪的内在规律和发展趋势,为保护业务健康发展建立畅通外部沟通渠道;
依据法律法规要求,建立并保持与执法机关的互动窗口,严格履行法律赋予的企业义务。
'''
保存数据
ws = op.Workbook()
wb = ws.create_sheet(index=0)
wb.cell(row=1, column=1, value='职位名称')
wb.cell(row=1, column=2, value='国家')
wb.cell(row=1, column=3, value='城市')
wb.cell(row=1, column=4, value='职位分类')
wb.cell(row=1, column=5, value='职位更新时间')
wb.cell(row=1, column=6, value='职位要求')
ws.save('腾讯职位.xlsx')
for page in range(1, 175+1):
url = f'https://careers.tencent.com/tencentcareer/api/post/Query?timestamp=1623410681974&countryId=&cityId=&bgIds=&productId=&categoryId=&parentCategoryId=&attrId=&keyword=&pageIndex={page}&pageSize=10&language=zh-cn&area=cn'
可视化展示
rcv_data = pd.read_excel('腾讯职位.xlsx')
c_title = rcv_data['职位要求'].tolist()
#观影评论词云图
wordlist = jieba.cut(''.join(c_title))
result = ' '.join(wordlist)
pic = 'img.jpg'
gen_stylecloud(text=result,
icon_name='fas fa-paw',
font_path='msyh.ttc',
background_color="white",
output_name=pic)
print('绘图成功!')
pd_data = pd.read_excel('腾讯职位.xlsx')
x = pd_data['职位分类'].value_counts() #index, index.values, index.tolist()
x1_data = x.index.tolist()
x2_data = x.tolist()
'''
['技术', '产品', '设计', '销售、服务与支持', '营销与公关', '人力资源', '战略与投资', '内容', '法律与公共策略', '财务', '行政支持']
[705, 576, 192, 101, 44, 31, 28, 27, 16, 16, 6]
'''
y = pd_data['城市'].value_counts()
y1_data = y.index.tolist()
y2_data = y.tolist()
'''
['深圳', '北京', '上海', '广州', '成都', '武汉', '香港(中国)', '杭州', '西安', '重庆', '南京', '天津', '合肥', '昆明', '贵阳', '兰州']
[1076, 264, 232, 93, 44, 7, 7, 7, 5, 5, 3, 2, 2, 2, 1, 1]
'''
# 绘制区域饼图
bar = (
Pie()
.add("", [list(z) for z in zip(x1_data, x2_data)]) # zip函数两个部分组合在一起list(zip(x,y))-----> [(x,y)]
.set_global_opts(title_opts=opts.TitleOpts(title="Pie-腾讯招聘职位分类饼图")) # 标题
.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}: {d}")) # 数据标签设置
)
bar.render('腾讯招聘职位分类饼图.shtml')
# 绘制区域柱状图
bar = (
Bar()
.add_xaxis(x1_data)
.add_yaxis("腾讯招聘职位分类柱状图", x2_data)
.set_global_opts(
title_opts=opts.TitleOpts(title="Bar-腾讯招聘职位分类柱状图"),
legend_opts=opts.LegendOpts(is_show=False),
)
)
bar.render('腾讯招聘职位分类柱状图.shtml')
y = pd_data['城市'].value_counts()
y1_data = y.index.tolist()
y2_data = y.tolist()
map = (
Map()
.add(" ", [list(z) for z in zip(y1_data, y2_data)], "china")
.set_global_opts(
title_opts=opts.TitleOpts(title="腾讯职位分布图"),
visualmap_opts=opts.VisualMapOpts(max_=1100, is_piecewise=True),
)
)
map.render('腾讯职位分布图.shtml')
文章精选
围观
丨更多
热文
丨更多
热文
丨更多
热文
爬了2576张美女网小姐姐私房照,感叹:Scrapy是真方便啊
丨更多
热文
丨更多