使用requests对智联招聘中的Java的岗位数据进行爬取

使用requests对智联招聘中的Java的岗位数据进行爬取

Scroll Down
1.进入智联招聘主页

百度智联招聘进入主页搜索Java出现下面界面

在这里插入图片描述

2.查看网页源代码

查看网页源代码发现数据并不再源码中直接出现,所以我们按F12打开浏览器控制台,找数据,数据肯定在js中,我们直接找就行。

在这里插入图片描述

3.找到数据js

找到数据js对着js鼠标右键copy->copy link address 拷贝js的地址,然后在浏览器中打开可以看看。如下图(我的浏览器装的有json插件所以显示的格式如下)

在这里插入图片描述

4.编写pythono爬虫代码。

1.首先使用requests或得到请求

resq=req.get("tps://fe-api.zhaopin.com/c/i/sou?pageSize=90&cityId=489&workExperience=-1&education=-1&companyType=-1&employmentType=
-1&jobWelfareTag=-1&kw=java&kt=3&_v=0.79700031&x-zp-page-request-id=1b81cf5fb1064fb8a848608b3f9b4168-1559050133225-707005&x-zp-client-id=821b76f3-84f4-4ce9-9fac-67acc3f11752")

2.刚刚查看数据发现数据的格式是json的所以可以将数据转换成json格式的数据,方便遍历

re=json.loads(resq.text)

3.通过浏览器可以知道每条数据有哪些字段,这里我只采集了部分字段,然后通过for循环遍历输出即可

for i in re[‘data’][‘results’]:
    print(“工作名称:”,i[‘jobName’],”,”,end=””)
    print(“薪资:”,i[‘salary’], “,”, end=””)
    print(“工作经验:”,i[‘workingExp’][‘name’], “,”, end=””)
    print(“学历要求:”, i[‘eduLevel’][‘name’], “,”, end=””)
    print(“工作类型:”, i[‘emplType’], “,”, end=””)
    print(“职位主页:”, i[‘positionURL’])
    print(“公司名称:”,i[‘company’][‘name’],”,”,end=””)
    print(“公司地址:”, i[‘city’][‘display’], “,”, end=””)
    print(“公司大小:”, i[‘company’][‘size’][‘name’], “,”, end=””)
    print(“公司类型:”, i[‘company’][‘type’][‘name’], “,”, end=””)
    print(“公司主页:”, i[‘company’][‘url’])
    print(“更新于:”, i[‘createDate’], “,”, end=””)
    print(“福利待遇:”,i[‘jobTag’][‘searchTag’])

5.完整代码

import requests as req
import json
resq=req.get(“https://fe-api.zhaopin.com/c/i/sou?pageSize=90&cityId=489&workExperience=-1&education=-1&companyType=-1&employmentType=-1&jobWelfareTag=-1&kw=java&kt=3&_v=0.79700031&x-zp-page-request-id=1b81cf5fb1064fb8a848608b3f9b4168-1559050133225-707005&x-zp-client-id=821b76f3-84f4-4ce9-9fac-67acc3f11752“)
re=json.loads(resq.text)
for i in re[‘data’][‘results’]:
    print(“工作名称:”,i[‘jobName’],”,”,end=””)
    print(“薪资:”,i[‘salary’], “,”, end=””)
    print(“工作经验:”,i[‘workingExp’][‘name’], “,”, end=””)
    print(“学历要求:”, i[‘eduLevel’][‘name’], “,”, end=””)
    print(“工作类型:”, i[‘emplType’], “,”, end=””)
    print(“职位主页:”, i[‘positionURL’])
    print(“公司名称:”,i[‘company’][‘name’],”,”,end=””)
    print(“公司地址:”, i[‘city’][‘display’], “,”, end=””)
    print(“公司大小:”, i[‘company’][‘size’][‘name’], “,”, end=””)
    print(“公司类型:”, i[‘company’][‘type’][‘name’], “,”, end=””)
    print(“公司主页:”, i[‘company’][‘url’])
    print(“更新于:”, i[‘createDate’], “,”, end=””)
    print(“福利待遇:”,i[‘jobTag’][‘searchTag’])

6.运行结果

在这里插入图片描述