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操作MySQL数据库具体方法
Oct 28 Python
Python中让MySQL查询结果返回字典类型的方法
Aug 22 Python
Python List cmp()知识点总结
Feb 18 Python
Python自动化运维之Ansible定义主机与组规则操作详解
Jun 13 Python
Python 线程池用法简单示例
Oct 02 Python
创建Shapefile文件并写入数据的例子
Nov 26 Python
python如何求数组连续最大和的示例代码
Feb 04 Python
简单了解python shutil模块原理及使用方法
Apr 28 Python
基于python实现简单网页服务器代码实例
Sep 14 Python
一个非常简单好用的Python图形界面库(PysimpleGUI)
Dec 28 Python
python+selenium爬取微博热搜存入Mysql的实现方法
Jan 27 Python
一些让Python代码简洁的实用技巧总结
Aug 23 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
Mac环境下php操作mysql数据库的方法分享
2015/05/11 PHP
PHP数组实例详解
2016/06/26 PHP
PHP 二维array转换json的实例讲解
2018/08/21 PHP
通过Mootools 1.2来操纵HTML DOM元素
2009/09/15 Javascript
jquery 图片Silhouette Fadeins渐显效果
2010/02/07 Javascript
Javascript数组的排序 sort()方法和reverse()方法
2012/06/04 Javascript
jQuery搜索同辈元素方法
2015/02/10 Javascript
基于JavaScript代码实现微信扫一扫下载APP
2015/12/30 Javascript
使用jQuery处理AJAX请求的基础学习教程
2016/05/10 Javascript
jquery遍历table的tr获取td的值实现方法
2016/05/19 Javascript
JS中检测数据类型的几种方式及优缺点小结
2016/12/12 Javascript
JS中使用textPath实现线条上的文字
2017/12/25 Javascript
JS实现左边列表移到到右边列表功能
2018/03/28 Javascript
使用layui定义一个模块并使用的例子
2019/09/14 Javascript
python使用psutil模块获取系统状态
2016/08/27 Python
快速了解python leveldb
2018/01/18 Python
tensorflow入门之训练简单的神经网络方法
2018/02/26 Python
python中实现控制小数点位数的方法
2019/01/24 Python
Python中dict和set的用法讲解
2019/03/28 Python
python向图片里添加文字
2019/11/26 Python
Python是怎样处理json模块的
2020/07/16 Python
基于python实现生成指定大小txt文档
2020/07/20 Python
Python如何获取文件路径/目录
2020/09/22 Python
python合并多个excel文件的示例
2020/09/23 Python
需要知道的CSS3动画技术
2010/01/01 HTML / CSS
Zavvi西班牙:电子游戏、极客服装、Blu-ray、Funko Pop等
2019/05/03 全球购物
英国索普公园票务和酒店套餐:Thorpe Breaks
2019/09/14 全球购物
编程用JAVA解析XML的方式
2013/07/07 面试题
工程开工庆典邀请函
2014/02/01 职场文书
幼儿园母亲节活动方案
2014/03/10 职场文书
管理学院毕业生自荐信范文
2014/03/10 职场文书
2014年学校党建工作总结
2014/11/11 职场文书
黄山导游词
2015/01/31 职场文书
反邪教警示教育活动总结
2015/05/09 职场文书
珍惜时间的诗歌赏析
2019/08/23 职场文书
Pytorch反向传播中的细节-计算梯度时的默认累加操作
2021/06/05 Python