1 . 前言
2 . 数据需求
3 . 分析页面
1前言
目前来说,在互联网招聘界有一个“蓬勃生长”的“招聘小巨头”,也就是我们这期被爬的第一“男猪脚”----Boss直聘,为什么说它是小巨头呢,也是因为其成立于2014年,短短两三年的时间,凭借其“让Boss主动找你”的职业推荐理念获得广大用户的青睐,目前也是稳稳立足于“互联网招聘三巨头”之一,于是我们凭借着我们谁热门我爬谁的理念,我们把目标对准了它。
2数据需求
第二步我们来了解一下我们希望爬下来哪些数据,首先进入筛选页面
我们希望能够做到数据参数大概是以下这样
id area_info position_type company_info position_info new_or_hot
也就是我们可以这五个参数来确定一个职位列表,分别是地区信息、职位要求、公司要求,排序要求、岗位分类,我们依靠这五个大的参数集合确定一个列表。
接下来我们来看看详情页的内容
我们可以确定的每个职位信息包括以下几个方面
发布时间 发布人 职位公司 职位信息(职位名称 职位薪资 职位要求 工作职责 职位标签 )
3分析页面
打开Firefox的Web控制台,我们先看看列表页的获取
我们可以看到关于搜索栏的地方,不同条件会跳转去GET请求一个新的页面,我们具体看看参数
我们可以看到有四个主要的参数
query:查询
scity:城市编号
industry:行业编号
position:职业标号
我们下面再看看不同选项有什么影响
我们可以看到不同城市对应的cXXXXXX是不同的,也就是城市码不同,并且在细化的话a后面是路,b后面是区,h后面都是一样的,也就是北京的城市码,我们来看看参数
包含
query:查询条件
ka:具体选项
我们再来看看多个选项后的结果
https://www.zhipin.com/c101010100-p100109/
e_105-d_204-y_5-a_双井-b_朝阳区-h_101010100-t_801
/?query=python&ka=sel-degree-204
e、d、y后面都是之前我们选的结果,最后ka之后的结果是我们上次选的,也就能够得到我们这次想要的结果了,好,到这里我们就把筛选页分析完了,我们接下来分析一下详情页
我们发现详情页就是一个普通的GET查询,而具体的ID就是通过筛选页得到的
好,我们分析就到这里了,藉由这些分析结果我们就可以来开始编我们的代码了,以及观察后面大规模爬取的结果来看看是否有一些反爬策略。
具体实战代码可以关注我的github:flea-鼓上蚤系列
欢迎加我微信以及微信群,我们一起来探讨爬虫方面的信息