网络爬虫爬取拉勾招聘网
网络爬虫爬取拉勾招聘网
- 搭配好环境
- 复制以下代码
# -*- coding: utf-8 -*-
"""
Created on Mon Sep 7 21:44:39 2020@author: ASUS
"""import requests
import time
import json
import xlwtworkbook = xlwt.Workbook(encoding=' utf-8')
mysheet = workbook.add_sheet('mysheet')mysheet.write(0, 0, 'positionId')
mysheet.write(0, 1, 'positionName')
mysheet.write(0, 2, 'companyId')
mysheet.write(0, 3, 'companyFullName')
mysheet.write(0, 4, 'city')
mysheet.write(0, 5, 'companyLabelList')
mysheet.write(0, 6, 'companyLogo')
mysheet.write(0, 7, 'companyShortName')
mysheet.write(0, 8, 'companySize')
mysheet.write(0, 9, 'createTime')
mysheet.write(0, 10, 'district')
mysheet.write(0, 11, 'education')
mysheet.write(0, 12, 'financeStage')
mysheet.write(0, 13, 'firstType')
mysheet.write(0, 14, 'formatCreateTime')
mysheet.write(0, 15, 'industryField')
mysheet.write(0, 16, 'jobNature')
mysheet.write(0, 17, 'lastLogin')
mysheet.write(0, 18, 'latitude')
mysheet.write(0, 19, 'linestaion')
mysheet.write(0, 20, 'longitude')
mysheet.write(0, 21, 'matchScore')mysheet.write(0, 22, 'positionAdvantage')
mysheet.write(0, 23, 'positionId')
mysheet.write(0, 24, 'positionLables')
mysheet.write(0, 25, 'positionName')
mysheet.write(0, 26, 'secondType')
mysheet.write(0, 27, 'skillLables')
mysheet.write(0, 28, 'stationname')
mysheet.write(0, 29, 'subwayline')
mysheet.write(0, 30, 'thirdType')
mysheet.write(0, 31, 'workYear')def main(kd,pages,row):# 通过访问主网页获取cookies和sessionurl1 = 'https://www.lagou.com/jobs/list_python?city=%E5%85%A8%E5%9B%BD&cl=false&fromSearch=true&labelWords=&suginput='# 提交ajax请求,获取json数据url = "https://www.lagou.com/jobs/positionAjax.json?px=default&needAddtionalResult=false"# 请求头headers = {'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8','Referer': 'https://www.lagou.com/jobs/list_python?px=default&city=%E5%85%A8%E5%9B%BD','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36','Host': 'www.lagou.com'}# 使用data来决定获取多少页的json数据for page in range(1, pages):data = {'first': 'false','pn': page,'kd': 'python'}data['kd']=kds = requests.Session() # 建立sessions.get(url=url1, headers=headers, timeout=1)cookie = s.cookies # 获取cookierespon = s.post(url=url, headers=headers, data=data, cookies=cookie, timeout=3)time.sleep(1)#print(respon.text)result = json.loads(respon.text)info = result["content"]["positionResult"]["result"]print(len(info))for j in info:mysheet.write(row, 0, j['positionId'])mysheet.write(row, 1, j['positionName'])mysheet.write(row, 2, j['companyId'])mysheet.write(row, 3, j['companyFullName'])mysheet.write(row, 4, j['city'])mysheet.write(row, 5, j['companyLabelList'])mysheet.write(row, 6, j['companyLogo'])mysheet.write(row, 7, j['companyShortName'])mysheet.write(row, 8, j['companySize'])mysheet.write(row, 9, j['createTime'])mysheet.write(row, 10, j['district'])mysheet.write(row, 11, j['education'])mysheet.write(row, 12, j['financeStage'])mysheet.write(row, 13, j['firstType'])mysheet.write(row, 14, j['formatCreateTime'])mysheet.write(row, 15, j['industryField'])mysheet.write(row, 16, j['jobNature'])mysheet.write(row, 17, j['lastLogin'])mysheet.write(row, 18, j['latitude'])mysheet.write(row, 19, j['linestaion'])mysheet.write(row, 20, j['longitude'])mysheet.write(row, 21, j['matchScore'])mysheet.write(row, 22, j['positionAdvantage'])mysheet.write(row, 23, j['positionId'])mysheet.write(row, 24, j['positionLables'])mysheet.write(row, 25, j['positionName'])mysheet.write(row, 26, j['secondType'])mysheet.write(row, 27, j['skillLables'])mysheet.write(row, 28, j['stationname'])mysheet.write(row, 29, j['subwayline'])mysheet.write(row, 30, j['thirdType'])mysheet.write(row, 31, j['workYear'])row=row+1workbook.save('py3.xls')
# 获取前两页的职位json信息
kd=input('输入关键字:')
pages=int(input('输入要爬取多少页:'))
main(kd,pages,1)
# 结果如下:
# {"resubmitToken":null,"requestId":null,"msg":null,"success":true,"content":{"hrInfoMap":{"6187967":{"userId":11765418,"phone":null,"positionName":"招聘经理",........."pageSize":15},"code":0}
- 其中输入关键字,比如java,python等等
- 第二步,输入需要爬的页数。
- 结果
网络爬虫爬取拉勾招聘网相关推荐
- python爬虫兼职-python爬虫爬取拉勾招聘网
# -*- coding: utf-8 -*- """ Created on Mon Sep 7 21:44:39 2020 @author: ASUS "&q ...
- Python网络爬虫爬取智联招聘职位
观察网站结构. 打开智联招聘网页,搜索数据分析师,出来很多招聘岗位,限定全国范围,从下图看出有12354个职位,一共有90页,看最后一页职位已经只是和数据分析师相关而已. 看看最后一页搜索结果 PS: ...
- python爬虫——爬取拉勾上的职位信息
爬取拉勾网站岗位数据 1.调用网页 查找网页链接规律 写一个for循环,爬取每一个网页的职位信息 def down():for i in range(1,4):if i == 1:strUrl = & ...
- Python网络爬虫:爬取腾讯招聘网职位信息 并做成简单可视化图表
hello,大家好,我是wangzirui32,今天我们来学习如何爬取腾讯招聘网职位信息,并做成简单可视化图表,开始学习吧! 文章目录 1. 网页分析 2. 获取json数据 3. 转换为Excel ...
- 从入门到入土:Python爬虫学习|实例练手|详细讲解|爬取腾讯招聘网|一步一步分析|异步加载|初级难度反扒处理|寻找消失的API来找工作吧
此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...
- python网络爬虫网易云音乐下载_python网络爬虫爬取网易云音乐
#爬取网易云音乐 url="https://music.163.com/discover/toplist" #歌单连接地址 url2 = 'http://music.163.com ...
- Python:网络爬虫爬取某表情包网站
Python:网络爬虫爬取某表情包网站 参考: 爬虫基础知识点汇总(html文件基础和4个常用库 超级详细长文预警) [爬虫教程]吐血整理,最详细的爬虫入门教程~ HTML的简单介绍 HTML的全称为 ...
- python3网络爬虫--爬取b站用户投稿视频信息(附源码)
文章目录 一.准备工作 1.工具 二.思路 1.整体思路 2.爬虫思路 三.分析网页 1.分析数据加载方式 2.分词接口url 3.分析用户名(mid) 四.撰写爬虫 五.得到数据 六.总结 上次写了 ...
- 用python网络爬虫爬取英雄联盟英雄图片
用python爬虫爬取lol皮肤. 这也用python网络爬虫爬取lol英雄皮肤,忘了是看哪个大神的博客(由于当时学了下就一直放在这儿,现在又才拿出来,再加上马上要考二级挺忙的.),代码基本上是没改, ...
最新文章
- luogu 2051 中国象棋
- python教程第四版pdf下载-笨办法学python第四版 电子书(pdf格式)
- 【FluidSynth】FluidSynth 简介 ( 相关资源链接 | 简介 | 特征 )
- C#项目中常用到的设计模式
- 通过基于JDBC的用户存储部署Identity Server
- elasticsearch,elasticsearch-service安装
- DEVICE_ATTR设置0777引发血案
- python 数据分析 实际案例_python实战案例:超市营业额数据分析
- 面试被问mysql扩展性设计相关的点,你知道该如何回答吗
- 报错:content type application/x-www-form-urlencoded;
- mysql limit索引变_Mysql limit 优化,百万至千万级快速分页 复合索引的引用并应用于轻量级框架...
- 软件开发应用分层、每层的作用及各层之间调用关系
- 腾讯云独立模式账号引入接口
- java jad_Java反编译工具 jad安装及使用的指南
- 在一个页面的多个位置同时显示不同的Toastr提示信息
- 数据库注入提权总结(一)
- RSS阅读器FeedDemon使用方法
- P1138 第k小整数
- 点开计算机左侧没有桌面一项,为什么,我的电脑右键点选桌面空白弹出的右键选单里面没有了“萤幕解析度”一项啊?怎么添加回来啊急!1...
- 【《Real-Time Rendering 3rd》提炼总结】完结篇:系列合集电子书PDF下载实时渲染知识网络图谱新系列预告