拉勾网招聘信息分析(一)

周末日常数据处理学习,心血来潮对拉勾关于Python职位招聘表示很感兴趣,所以拿点数据作为学习和实践。

获取字段:

  • 职位名称
  • 公司名称
  • 工资待遇
  • 工作经验
  • 学历要求

数据获取思路:

模拟人为浏览网页行为,添加header、加大延时(如果频繁获取会出现403,不过很快解禁)、添加代理(现在代理网站都不咋的,用那么几下就error;各位大牛有好网站可推荐哦)。分析网页结构,借助html自带标签和各字段class采用css方式解析需要字段。

数据获取代码

# post请求参数
    header = {
        'Host': 'www.lagou.com',
        'Referer': 'https://www.lagou.com/jobs/list_python?labelWords=&fromSearch=true&suginput=',
        'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
    }
    param = {
        'first': 'true',
        'pn': page,
        'kd': kind

    }
    # 请求的url
    url = 'https://www.lagou.com/jobs/positionAjax.json?px=default&city=%E5%8C%97%E4%BA%AC&needAddtionalResult=false'
    response = requests.post(url, headers=header, data=param)
    response.encoding = 'utf-8'
    if response.status_code == 200:
        response = response.json()
        # 请求响应中的positionResult 包括查询总数 以及该页的招聘信息(公司名、地址、薪资、福利待遇等...)
        return response['content']['positionResult']
    return None

解析代码

python_job = []
# 公司全名
python_job.append(j['companyFullName'])
# 公司简称
python_job.append(j['companyShortName'])
# 公司规模
python_job.append(j['companySize'])
# 融资
python_job.append(j['financeStage'])
# 所属区域
python_job.append(j['district'])
# 职称
python_job.append(j['positionName'])
# 要求工作年限
python_job.append(j['workYear'])
# 招聘学历
python_job.append(j['education'])
# 薪资范围
python_job.append(j['salary'])
# 福利待遇
python_job.append(j['positionAdvantage'])

数据分析

  • 福利待遇词云
    拉勾网招聘信息分析(一)_第1张图片
    福利

    感觉行业最大的福利弹性,一种很帅的福利(就是那种可以无限弹的机制)
  • 北京各区县职位热力
    拉勾网招聘信息分析(一)_第2张图片
    北京市部分区域python职位分布 .png

    大海淀的职位需求还是很高的,以后找工作也可以往海淀扎扎堆,也许你的心仪公司就在这也说不定。
  • 工资分布直方图
    拉勾网招聘信息分析(一)_第3张图片
    工资范围分布

缺陷

  • 数据处理和清洗的比较粗糙
  • 部分数据还没有想到比较好的表征(大佬们可以多提建议)
  • 关于代码和数据有需要可以私信。

你可能感兴趣的:(拉勾网招聘信息分析(一))