Python爬虫实战演练之如何实现采集拉钩网招聘信息数据
发表于:2025-01-27 作者:千家信息网编辑
千家信息网最后更新 2025年01月27日,这篇文章主要讲解了"Python爬虫实战演练之如何实现采集拉钩网招聘信息数据",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python爬虫实战演练之如
千家信息网最后更新 2025年01月27日Python爬虫实战演练之如何实现采集拉钩网招聘信息数据
这篇文章主要讲解了"Python爬虫实战演练之如何实现采集拉钩网招聘信息数据",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python爬虫实战演练之如何实现采集拉钩网招聘信息数据"吧!
本文要点:
爬虫的基本流程
requests模块的使用
保存csv
可视化分析展示
环境介绍
python 3.8
pycharm 2021专业版 激活码
Jupyter Notebook
pycharm 是编辑器 >> 用来写代码的 (更方便写代码, 写代码更加舒适)
python 是解释器 >>> 运行解释python代码的
本次目标
爬虫块使用
内置模块:
import pprint >>> 格式化输入模块
import csv >>> 保存csv文件
import re >>> re 正则表达式
import time >>> 时间模块
第三方模块:
import requests >>> 数据请求模块 pip install requests
win + R 输入cmd,回车输入安装命令pip install 模块名。
如果出现爆红,可能是因为,网络连接超时,切换国内镜像源
代码实现步骤: (爬虫代码基本步骤)
发送请求
获取数据
解析数据
保存数据
开始代码
导入模块
import requests # 数据请求模块 第三方模块 pip install requestsimport pprint # 格式化输出模块import csv # csv保存数据import time
发送请求
url = 'https://www.lagou.com/jobs/positionAjax.json?needAddtionalResult=false'# headers 请求头 用来伪装python代码, 防止被识别出是爬虫程序, 然后被反爬# user-agent: 浏览器的基本标识headers = { 'cookie': 'privacyPolicyPopup=false; user_trace_token=20211016201224-ba4d90f0-3db5-4647-a86e-411ee3d5bfef; __lg_stoken__=08639898fbdd53a7ebf88fa16e895b59a51e47738f45faef6a32b9a88d6537bf9459b2c6d956a636a99ff599c6a260f04514df42cb77f83065d55f48a2549e60381e8da811b8; JSESSIONID=ABAAAECAAEBABIIE72FFC38A79322951663B5C7AF10CD12; WEBTJ-ID=20211016201225-17c89047f4293-0d7a7cd583dc83-b7a1438-2073600-17c89047f43a90; sajssdk_2015_cross_new_user=1; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%2217c8904800d57b-04f17ed5193984-b7a1438-2073600-17c8904800e765%22%2C%22%24device_id%22%3A%2217c8904800d57b-04f17ed5193984-b7a1438-2073600-17c8904800e765%22%7D; PRE_UTM=; PRE_HOST=; PRE_LAND=https%3A%2F%2Fwww.lagou.com%2Fjobs%2Flist%5Fpython%3FlabelWords%3D%26fromSearch%3Dtrue%26suginput%3D; LGSID=20211016201225-7b8aa578-74ab-4b09-885c-ebbe57a6029a; PRE_SITE=; LGUID=20211016201225-fda15dbb-7823-4a2d-9d80-258caf018f02; _ga=GA1.2.903785807.1634386346; _gat=1; Hm_lvt_4233e74dff0ae5bd0a3d81c6ccf756e6=1634386346; _gid=GA1.2.701447082.1634386346; X_HTTP_TOKEN=ba154973a88f2f64153683436141effc1d544fa2ed; Hm_lpvt_4233e74dff0ae5bd0a3d81c6ccf756e6=1634386352; LGRID=20211016201232-8913a057-d37d-41c3-b094-a04cf36515a7; SEARCH_ID=ff32d1294b464305b4e0907f659ef2a7', 'referer': 'https://www.lagou.com/jobs/list_python?labelWords=&fromSearch=true&suginput=', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36',}data = { 'first': 'false', 'pn': page, 'kd': 'python', 'sid': 'bf8ed05047294473875b2c8373df0357'}# response 自定义变量 可以自己定义 response = requests.post(url=url, data=data, headers=headers)
解析数据
json数据最好解析 非常好解析, 就根据字典键值对取值
result = response.json()['content']['positionResult']['result']# 循环遍历 从 result 列表里面 把元素一个一个提取出来for index in result: # pprint.pprint(index) # href = index['positionId'] href = f'https://www.lagou.com/jobs/{index["positionId"]}.html' dit = { '标题': index['positionName'], '地区': index['city'], '公司名字': index['companyFullName'], '薪资': index['salary'], '学历': index['education'], '经验': index['workYear'], '公司标签': ','.join(index['companyLabelList']), '详情页': href, } # ''.join() 把列表转成字符串 '免费班车', csv_writer.writerow(dit) print(dit)
加翻页
for page in range(1, 31): print(f'------------------------正在爬取第{page}页-------------------------') time.sleep(1)
保存数据
f = open('招聘数据.csv', mode='a', encoding='utf-8', newline='')csv_writer = csv.DictWriter(f, fieldnames=[ '标题', '地区', '公司名字', '薪资', '学历', '经验', '公司标签', '详情页',])csv_writer.writeheader() # 写入表头
运行代码,得到数据
感谢各位的阅读,以上就是"Python爬虫实战演练之如何实现采集拉钩网招聘信息数据"的内容了,经过本文的学习后,相信大家对Python爬虫实战演练之如何实现采集拉钩网招聘信息数据这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
数据
模块
爬虫
代码
招聘
信息
实战
演练
公司
学习
输入
内容
名字
地区
学历
标签
标题
格式
步骤
第三方
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发小组心得
数据库表的大小跟宽度
开局就给管理权限的服务器
玉田项目网络技术答疑解惑
系统数据库怎么打开
三级网络技术 考什么
三菱plc连接sql数据库
关系运算在数据库中的运用
软件开发退出壁垒
战地5没有日本服务器
电子发票手工上传服务器
本地智能服务器怎么下载
管理网络安全数据是什么意思
在线网络技术服务项目
cpt网络安全工程师
磁盘阵列的网络安全
定义什么有利于数据库宏对象管理
信息技术活动课网络安全教学设计
天长购买软件开发技术大概费用
潍坊游戏软件开发哪家好
头条APP软件开发
深圳oppo公司软件开发工资
网络安全办公室监控力度
高中学生软件开发需要多久
浙江科技互联网有限公司
多台web服务器端口
无锡节能软件开发多少钱
曲阜市人民法院网络安全招标
剑网三手游怎么选择服务器
域文件服务器搭