Python爬取智联招聘数据分析师岗位相关信息的方法


Posted in Python onAugust 13, 2019

进入智联招聘官网,在搜索界面输入‘数据分析师',界面跳转,按F12查看网页源码,点击network

Python爬取智联招聘数据分析师岗位相关信息的方法

 选中XHR,然后刷新网页

Python爬取智联招聘数据分析师岗位相关信息的方法

可以看到一些Ajax请求, 找到画红线的XHR文件,点击可以看到网页的一些信息

Python爬取智联招聘数据分析师岗位相关信息的方法

Python爬取智联招聘数据分析师岗位相关信息的方法

Python爬取智联招聘数据分析师岗位相关信息的方法

在Header中有Request URL,我们需要通过找寻Request URL的特点来构造这个请求网址,

点击Preview,可以看到我们所需要的信息就存在result中,这信息基本是json格式,有些是列表;

下面我们通过Python爬虫来爬取上面的信息;

代码如下:

import requests
from urllib.parse import urlencode
import json
#from requests import codes
#import os
#from hashlib import md5
#from multiprocessing.pool import Pool
#import re
 
 
def get_page(offset):
  params = {
    'start': offset,
    'pageSize': '90',
    'cityId': '530',
    'salary': '0,0',
    'workExperience': '-1',
    'education': '-1',
    'companyType': '-1',
    'employmentType': '-1',
    'jobWelfareTag': '-1',
    'kw': '数据分析师',
    'kt': '3',
    '_v': '0.77091902',
    'x-zp-page-request-id': '8ff0aa73bf834b408f46324e44d89b84-1562722989022-210101',
    'x-zp-client-id': '2dc4c9a4-e80d-4488-84a3-03426dd69a1e'
    
    
  }
  base_url = 'https://fe-api.zhaopin.com/c/i/sou?'
  url = base_url + urlencode(params)
  try:
    resp = requests.get(url)
    print(url)
    if 200 == resp.status_code:
      print(resp.json())
      return resp.json()
  except requests.ConnectionError:
    return None
 
 
def get_information(json_page):
  if json_page.get('data'):
    results = json_page.get('data').get('results')    
    for result in results:
       yield {
         'city': result.get('city').get('display'),
          'company': result.get('company').get('name'),
          #'welfare':result.get('welfare'),
          'workingExp':result.get('workingExp').get('name'),
          'salary':result.get('salary'),
          'eduLevel':result.get('eduLevel').get('name')
        }
print('succ')
 
def write_to_file(content):
   with open('result.txt','a',encoding='utf-8') as f:
      print(type(json.dumps(content)))
      f.write(json.dumps(content,ensure_ascii=False)+'\n')
   
   
def main(offset):
  json_page=get_page(offset)  
  for content in get_information(json_page):
    write_to_file(content)
  
if __name__=='__main__':
   for i in range(10):
      main(offset=90*i)

爬取结果如下:

Python爬取智联招聘数据分析师岗位相关信息的方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python在多玩图片上下载妹子图的实现代码
Aug 13 Python
Python之PyUnit单元测试实例
Oct 11 Python
python操作gmail实例
Jan 14 Python
在Django中使用Sitemap的方法讲解
Jul 22 Python
使用Python的urllib2模块处理url和图片的技巧两则
Feb 18 Python
python实现淘宝秒杀聚划算抢购自动提醒源码
Jun 23 Python
python学习之hook钩子的原理和使用
Oct 25 Python
详解Python Matplot中文显示完美解决方案
Mar 07 Python
Django 配置多站点多域名的实现步骤
May 17 Python
Python 如何实现访问者模式
Jul 28 Python
python3中布局背景颜色代码分析
Dec 01 Python
python3代码中实现加法重载的实例
Dec 03 Python
python基于json文件实现的gearman任务自动重启代码实例
Aug 13 #Python
Python 写入训练日志文件并控制台输出解析
Aug 13 #Python
基于MATLAB和Python实现MFCC特征参数提取
Aug 13 #Python
Python 使用 docopt 解析json参数文件过程讲解
Aug 13 #Python
Django项目中实现使用qq第三方登录功能
Aug 13 #Python
一篇文章搞定Python操作文件与目录
Aug 13 #Python
Python Django Cookie 简单用法解析
Aug 13 #Python
You might like
PHP常用技巧汇总
2016/03/04 PHP
Mootools 1.2教程 设置和获取样式表属性
2009/09/15 Javascript
使用Plupload实现直接上传附件至七牛云存储
2014/12/26 Javascript
js使用Array.prototype.sort()对数组对象排序的方法
2015/01/28 Javascript
Nodejs进阶:如何将图片转成datauri嵌入到网页中去实例
2016/11/21 NodeJs
设置jquery UI 控件的大小方法
2016/12/12 Javascript
原生JS实现图片轮播效果
2016/12/26 Javascript
jQuery图片轮播功能实例代码
2017/01/29 Javascript
javascript实现右下角广告框效果
2017/02/01 Javascript
vue.js开发环境安装教程
2017/03/17 Javascript
浅谈 Vue v-model指令的实现原理
2017/06/08 Javascript
jQuery修改DOM结构_动力节点Java学院整理
2017/07/05 jQuery
mint-ui在vue中的使用示例
2018/04/05 Javascript
用Node编写RESTful API接口的示例代码
2018/07/04 Javascript
使用微信小程序开发弹出框应用实例详解
2018/10/18 Javascript
[02:04]2014DOTA2国际邀请赛 DK一个时代的落幕
2014/07/21 DOTA
[48:39]Ti4主赛事胜者组第一天 EG vs NEWBEE 2
2014/07/19 DOTA
[00:12]2018DOTA2亚洲邀请赛 Sccc亮相SOLO赛,今年他又会有什么样的战绩?
2018/04/06 DOTA
python读取txt文件,去掉空格计算每行长度的方法
2018/12/20 Python
python解析json串与正则匹配对比方法
2018/12/20 Python
Python datetime和unix时间戳之间相互转换的讲解
2019/04/01 Python
python ChainMap的使用和说明详解
2019/06/11 Python
Python爬取智联招聘数据分析师岗位相关信息的方法
2019/08/13 Python
pycharm配置QtDesigner的超详细方法
2021/01/25 Python
解决PDF 转图片时丢文字的一种可能方式
2021/03/04 Python
世界上最好的帽子:Tilley
2016/11/27 全球购物
事业单位辞职信范文
2014/01/19 职场文书
领导调研接待方案
2014/02/27 职场文书
优秀公益广告词大全
2014/03/19 职场文书
小学班主任评语大全
2014/04/23 职场文书
学校做一个有道德的人活动方案
2014/08/23 职场文书
婚庆公司开业主持词
2015/06/30 职场文书
优质护理心得体会
2016/01/22 职场文书
如何使用 resize 实现图片切换预览功能
2021/08/23 HTML / CSS
提高系统的吞吐量解决数据库重复写入问题
2022/04/23 MySQL
解决ubuntu安装软件时,status-code=409报错的问题
2022/12/24 Servers