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实现JAVA源代码从ANSI到UTF-8的批量转换方法
Aug 10 Python
Python中创建字典的几种方法总结(推荐)
Apr 27 Python
python实现校园网自动登录的示例讲解
Apr 22 Python
浅谈Python中eval的强大与危害
Mar 13 Python
Python流行ORM框架sqlalchemy安装与使用教程
Jun 04 Python
Python考拉兹猜想输出序列代码实践
Jul 05 Python
python GUI库图形界面开发之PyQt5打印控件QPrinter详细使用方法与实例
Feb 28 Python
python3读取autocad图形文件.py实例
Jun 05 Python
python和php学习哪个更有发展
Jun 17 Python
Python Web项目Cherrypy使用方法镜像
Nov 05 Python
PyCharm2020.3.2安装超详细教程
Feb 08 Python
Python中的 No Module named ***问题及解决
Jul 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
PHP 程序员也要学会使用“异常”
2009/06/16 PHP
创建配置文件 用PHP写出自己的BLOG系统 2
2010/04/12 PHP
php数字转汉字代码(算法)
2011/10/08 PHP
PHP实现的构造sql语句类实例
2016/02/03 PHP
PHP实现电商订单自动确认收货redis队列
2017/05/17 PHP
Gambit vs CL BO3 第二场 2.13
2021/03/10 DOTA
jQuery EasyUI API 中文文档 - NumberSpinner数值微调器使用介绍
2011/10/21 Javascript
基于Jquery实现键盘按键监听
2014/05/11 Javascript
更快的异步执行(setTimeout多浏览器)
2014/08/12 Javascript
js数值计算时使用parseInt进行数据类型转换(jquery)
2014/10/07 Javascript
javascript获取重复次数最多的字符
2015/07/08 Javascript
js实现仿MSN带关闭功能的右下角弹窗代码
2015/09/04 Javascript
浅谈jQuery animate easing的具体使用方法(推荐)
2016/06/17 Javascript
通过npm引用的vue组件使用详解
2017/03/02 Javascript
jq.ajax+php+mysql实现关键字模糊查询(示例讲解)
2018/01/02 Javascript
详解js静态检查工具eslint配置文件
2018/11/23 Javascript
微信小程序自定义多列选择器使用详解
2019/06/21 Javascript
vue2.0项目集成Cesium的实现方法
2019/07/30 Javascript
使用p5.js实现动态GIF图片临摹重现
2019/10/23 Javascript
node.js中path路径模块的使用方法实例分析
2020/02/13 Javascript
原生js实现九宫格拖拽换位
2021/01/26 Javascript
python用字典统计单词或汉字词个数示例
2014/04/22 Python
python实现字典(dict)和字符串(string)的相互转换方法
2017/03/01 Python
css3绘制天猫logo实现代码
2012/11/06 HTML / CSS
Html5 滚动穿透的方法
2019/05/13 HTML / CSS
在家更换处方镜片:Lensabl
2019/05/01 全球购物
老教师工作总结的自我评价
2013/09/27 职场文书
教育学专业毕业生的自我鉴定
2013/11/26 职场文书
简单而又朴实的个人求职信分享
2013/12/12 职场文书
2015欢度元旦标语口号
2014/12/09 职场文书
艺术节开幕词
2015/01/28 职场文书
2015大学生党员自我评价范文
2015/03/03 职场文书
早会开场白台词大全
2015/06/01 职场文书
《黄道婆》教学反思
2016/02/22 职场文书
Python函数中apply、map、applymap的区别
2021/11/27 Python
mysql中如何用命令创建联合唯一索引
2022/04/20 MySQL