巧用 Python 找工作(资料在文末)
前言
近年来 Python 之火大家都有感而知,那亲们知道北京的 Python 开发岗位、运维开发岗位招聘地域都是如何分布的吗?薪水如何?是否有前景等等,这些数据呢直接通过招聘信息来了解到企业用人是最直接的,也是最简单的途径。
那本次将通过分享 Python 来抓取拉钩的招聘信息,然后加以分析,做一个北京的 Python 职位地域分布、薪资范围、福利待遇等维度出一个简单的分析报告,希望能帮助到想在 Python 这片田地耕耘的童鞋在发展方向上有所参考。
用到的工具
使用 Python 的 requests 工具到招聘网站爬取我们想要的数据,分析和可视化也使用 Python 的相关模块来实现,主要有如下:
- Python 版本:Python 3.x
- requests:发起请求,从网站抓取数据
- math:数学运算函数,向上取整,这里主要用于分析数据
- time:时间模块,主要是控制爬虫不会因为频繁请求而被网站拉进小黑屋
- pandas:数据抓取后使用该模块保存为 csv 文件到本地
- matplotlib:可视化画图
- pylab:设置画图能显示中文
- wordcloud、scipy、jieba(字符串分割成单词):生成中文词云
如何进行数据抓取
使用 Chrome 打开拉钩网站,在网站输入“Python开发” 职位,使用 “检查” 功能查看网页源码。发现拉钩有反爬机制,职位信息并不在源代码里,而是在 JSON 文件里,因此直接通过 JSON 获取数据即可。

抓取信息时,需要加上头部信息,才能获取到数据。(原理很简单:你得伪装成一个 正常的 client 去请求网页才能拿到想要的数据)
def get_json(url, num):
'''从网页获取JSON,使用POST请求,加上头部信息'''
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36',
'Host': 'www.lagou.com',
'Referer':'https://www.lagou.com/jobs/list_python%E5%BC%80%E5%8F%91?labelWords=&;fromSearch=true&suginput=',
',
'X-Anit-Forge-Token': 'None',
'X-Requested-With': 'XMLHttpRequest'
}
data = {
'first': 'true',
'pn': num,
'kd': 'Python开发'}
res = requests.post(url, headers=headers, data=data)
res.raise_for_status()
res.encoding = 'utf-8'
# 得到包含职位信息的字典
page = res.json()
return page
在搜索结果的第一页,我们可以从 JSON 里读取总职位数,按照每页 15 个职位,获得要爬取的页数。再使用循环按页爬取,将职位信息汇总,输出为 CSV格式。
序运行如下:

抓取结果如下:

数据可视化画图展示
1、根据薪资制作直方图
薪资比例描述和可视化出图


2、根据岗位地域分布制作饼图

3、制作词云
将职位福利这一列数据进行汇总,按照词语出现的频率生成云词实现 Python 可视化,以下是原图和云词图对比:

作者:Nick
某上市公司高级运维,业务运维负责人,主导运维自动化的开发与运维前沿技术的落地,曾就职中石油、魔秀科技,5年从业经验,经历了运维到运维开发的转变。
获取资料的方式如下:
Nick 分享<Python 分析拉钩职位>
时间:2018-11-15
21:00-22:00
PPT+ 视频
链接: https://pan.baidu.com/s/1tzG1adgpn23TSKvnR6XmYg 提取码: 2p2t
项目代码:https://github.com/nicksors/JobAnalysis
参与方式:扫码添加小助手备注:公开课,会拉入直播分享群分享结束后会把资料分享给大家
巧用 Python 找工作(资料在文末)的更多相关文章
- 金三银四科学找工作,用python大数据分析一线城市1000多份岗位招聘需求
文章每周持续更新,各位的「三连」是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) 每年的三四月份是招聘高峰,也常被大家称为金三银四黄金招聘期,这时候上一 ...
- 让大蛇(Python)帮你找工作
前段时间用Python实现了一个网络爬虫(让大蛇(Python)帮你找工作),效率总体还可以,但是缺点就是每次都需要手动的去触发,于是打算对该爬虫加上Timer,经过网上一番搜索以及API的查询,发现 ...
- Python学到什么程度就可以去找工作?掌握这4点足够了!
大家在学习Python的时候,有人会问“Python要学到什么程度才能出去找工作”,对于在Python培训机构学习Python的同学来说这都不是问题,因为按照Python课程大纲来,一般都不会有什么问 ...
- Python学到什么程度才可以去找工作?掌握这4点足够了!
大家在学习Python的时候,有人会问"Python要学到什么程度才能出去找工作",对于在Python培训机构学习Python的同学来说这都不是问题,因为按照Python课程大纲来 ...
- 安卓开发视频教程!想找工作的你还不看这份资料就晚了!Android校招面试指南
前言 准备面试其实已经准备了挺久了,当时打算面试准备了差不多以后,跟公司谈谈涨薪的事情,谈不拢的话,就年后直接找其他的公司.谁想到婚假还没休完,老板就在公司宣布了撤出上海的决定,愿意去深圳的就去,不愿 ...
- 安装了Anaconda之后,Maya运行报错,Python 找不到 Maya 的 Python 模块
以前Maya用的好好地,结果安装了Anaconda之后,maya启动以后,日志就会报错(如下),只能自主建模,不能打开以前创建的模型,也不能导入fbx,错误提示就是Maya找不到Python模块,在网 ...
- 巧用Excel提高工作效率
程序员如何巧用Excel提高工作效率 主要讲解下Excel中VLOOKUP函数的使用,相比于上一篇中的内容,个人觉得这个相对高级一些. 1.使用背景 为什么会使用到这个函数呢,背景是这样的,有两个系统 ...
- [Job] 找工作小结
有近2个月没有更新博客,主要精力放在了投递会议论文和秋招找工作方面.这里简单总结一下秋招笔试面试的几点建议和感受. 投递的NLP算法工程师岗位,主要参加过面试的公司有腾讯(春招),蚂蚁金服(春招),追 ...
- Java+Python+前端 学习资料大全 百度云盘
Java架构师3大阶段 链接:https://pan.baidu.com/s/1DlXh33y5t4cZUmZH0cLvCw 提取码:5s76 2019前端架构阶段 链接:https://pan.ba ...
随机推荐
- SCCM OS播发
SCCM OS播发1.在分发点启用PXE支持2.将启动映像包分发到分发点:需要将x86和x64都分发到分发点,如果只分发x64,在客户端pxe启动时会出现 no response from wds s ...
- 裸机恢复 (BMR) 和系统状态恢复
DPM 将系统保护数据源视为两个组成部分 – 裸机恢复 (BMR) 和系统状态保护. BMR 涉及保护操作系统文件和重要卷上的所有数据,用户数据除外. 系统状态保护涉及保护操作系统文件. DPM 使用 ...
- November 27th 2016 Week 48th Sunday
It is never too late to be what you might have been. 勇敢做自己,永远不嫌迟. What I might have been? Experienci ...
- 死磕salt系列-salt文章目录汇总
死磕salt系列-salt入门 死磕salt系列-salt配置文件 死磕salt系列-salt grains pillar 配置 死磕salt系列-salt 常用modules 死磕salt系列-sa ...
- 1297. [SCOI2009]迷路【矩阵乘法】
Description windy在有向图中迷路了. 该有向图有 N 个节点,windy从节点 0 出发,他必须恰好在 T 时刻到达节点 N-1. 现在给出该有向图,你能告诉windy总共有多少种不同 ...
- 1051. [HAOI2006]受欢迎的牛【强连通分量】
Description 每一头牛的愿望就是变成一头最受欢迎的牛.现在有N头牛,给你M对整数(A,B),表示牛A认为牛B受欢迎. 这 种关系是具有传递性的,如果A认为B受欢迎,B认为C受欢迎,那么牛A也 ...
- ubuntu16.04安装oracle常见问题
报错信息: Err:2 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdrm2 amd64 2.4.83-1~16. ...
- Spring4自动装配(default-autowire)
§1 什么是自动装配? Spring IoC容器可以自动装配(autowire)相互协作bean之间的关联关系.因此,如果可能的话,可以自动让Spring通过检查BeanFactory中的内容,来替我 ...
- P1776 宝物筛选_NOI导刊2010提高(02)
题目描述 终于,破解了千年的难题.小FF找到了王室的宝物室,里面堆满了无数价值连城的宝物……这下小FF可发财了,嘎嘎.但是这里的宝物实在是太多了,小FF的采集车似乎装不下那么多宝物.看来小FF只能含泪 ...
- CMD centos7 安装 最新版本的docker -- dockerfire 原语 ENTRYPOINT - 导入镜像 tar mariadb Dockerfile 构建镜像
yum update # vim /etc/yum.repos.d/docker.repo //添加以下内容 [dockerrepo] name=Docker Repository baseurl=h ...