PYTHON爬取拉钩网

本文介绍了如何使用Python爬取拉钩网的招聘信息,包括分析网站构成,处理动态页面的POST请求,解决反爬机制,以及提取和保存数据。详细讲述了使用Session管理和登录方式来维护cookie,实现搜索、翻页功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本小白的第一篇文章,欢迎各位大神指导,本内容仅供学习使用。

需求

爬取拉钩网招聘信息,并进一步进行分析,仅学习使用。

使用工具

python3、PyCharm

步骤

一、分析拉钩网站构成
二、爬取数据
三、数据清洗
四、生成分析数据

一、分析拉钩网站构成

进入拉钩网,按F12检查,查看Network模块。
1、先确认网页类型(分静态和动态页面),进行上下页翻页,对比发现网站URL不变,为动态网页
2、查看获取方式为:POST
在这里插入图片描述!3、查看Request headers,python中需要填写,留意关键信息。
在这里插入图片描述
4、查找需要爬取内容位置和格式。动态页面以json格式保存。
在这里插入图片描述

二、爬取信息框架

1、获取response

先爬取第一页信息进行简单测试。

import requests as re
import json
base_url = "https://www.lagou.com/jobs/positionAjax.json?px=default&city=%E5%B9%BF%E5%B7%9E&needAddtionalResult=false"
base_headers = {
   
   "Accept": "application/json, text/javascript, */*; q=0.01",
                    "Host": "www.lagou.com",
                    "Referer": "https://www.lagou.com/jobs/list_%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90?labelWords=&fromSearch=true&suginput=",
                    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36'
                    }
data = {
   
   
            "first": "true",
            "pn": "1",
            "kd": "数据分析"
            }
response = re.post(url=base_url, headers=base_headers, data=data)         
print(response.text)

输出结果为:
在这里插入图片描述
失败,分析原因,用response.status_code == 200:代码测试,连接是成功的,但返回存在问题。查阅其他文章,发现是拉钩存在的反爬机制。response需要提供cookie。但python每次爬取提供的cookie不连续hi被判断为爬虫,从而禁止访问

这里找到了两个解决方法

解决方法一、:用Session()方法储存cookie

session = re.Session()      #创建cookie存储
session.get(url=base_url1,headers=base_headers)        #通过网址url1建立cookie
response = session.post
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值