当前位置: 首页 > 知识库问答 >
问题:

数据挖掘 - 58同城url无规律变化,是一种反爬措施吗?

况明贤
2023-10-22

我在爬58同城的招聘数据时,发现在同一页面从第二页转到第三页时,url中不仅页码部分从2变到3,还有一部分以“PGTID=”开头的内容,一直发生无规律变化,因此只通过修改Url中页码部分无法和浏览器一样遍历不同页,请问这是一种什么情况呢?会对爬虫有影响吗?请问该如何解决这个问题
例如:58同城招聘北京地区护士招聘第二页url为
https://bj.58.com/nhushi/pn2/?fullPath=674,413924,413926,413933&pid=614850579021660160&PGTID=0d3650ed-0000-1faf-3891-6563043e7c42&ClickID=3
而第三页url为
https://bj.58.com/nhushi/pn3/?fullPath=674,413924,413926,413933&pid=614850579021660160&PGTID=0d3650ed-0000-1a78-4730-7d235a78fb95&ClickID=3
由于我需要遍历到很多页之后,以找到数年以前的招聘数据,所以我担心只修改url中的页码会不会使得我找不到很多年以前的数据,一直在最近的数据中打转,请问这是一种反爬措施吗?请问这种url构造是怎么回事?

计算机小白,求大家帮助

共有1个答案

宋嘉禧
2023-10-22

这是一种反爬措施。58同城网站采取了各种方法来防止爬虫程序对其网站进行自动化访问和数据抓取。URL中的变化部分就是其中之一。这种URL无规律变化可能是通过生成唯一的URL来追踪每个页面请求,以防止爬虫程序简单地通过循环访问页码来获取数据。

对于爬虫的影响,这种反爬措施可能会使得你无法简单地通过修改页码来获取所有页面的数据。你可能需要采用更复杂的方法来模拟人类的浏览行为,例如使用随机延迟来模拟人类点击下一页的行为,或者使用JavaScript渲染引擎来获取动态生成的内容。

为了解决这个问题,你可以尝试以下方法:

  1. 使用浏览器自动化工具:使用浏览器自动化工具(如Selenium)来模拟人类的浏览行为,这样可以使得你的爬虫程序更接近真实的浏览器行为,从而避免被网站检测到。
  2. 分析请求参数:分析请求参数,尝试找到规律或者特定的参数对应特定的数据。可能有一些参数是固定的,而另一些参数是变化的,你可以尝试只修改固定的参数来获取下一页的数据。
  3. 模拟点击行为:如果你发现网站是通过点击行为来加载下一页的数据,你可以尝试模拟这种点击行为。这可能需要模拟鼠标移动和点击事件,或者使用JavaScript代码来触发点击事件。
  4. 尝试其他方法:如果以上方法都不行,你可能需要尝试其他方法来获取数据。例如,你可以尝试从其他来源获取数据,或者联系网站管理员获取数据。
 类似资料:
  • 一位挖掘专家 tom khabaza 提出了挖掘九律,挺好的东西,特别是九这个数字,深得中华文化精髓,有点独孤九剑的意思: 第一,目标律。 数据挖掘是一个业务过程,必须得有业务目标。无目的,无过程。 第二,知识律。 业务知识贯穿在挖掘这个业务过程的各环节。 第三,准备律。 数据获取、数据准备等数据处理耗时占整个挖掘过程的一半。 第四,NFL律。 NFL,没有免费的午餐。没有一个固定的算法适用所有的

  • 已凉┭┮﹏┭┮ 一、首先夸夸58真的很尊重应聘人员 HR提前一天电话联系询问是否有时间 确定有时间后发正式约面邮件 面试前会有邮件和短信提醒 二、面试内容 应聘岗位:算法工程师 面试时长:30min 问题: 自我介绍 介绍一下项目使用的模型 上过什么课程 进程和线程的差别 对数据结构的了解,有什么排序算法,快排的时间复杂度和空间复杂度 梯度消失和梯度爆炸 有什么损失函数 了解什么传统机器学习算法

  • #互联网公司爆料# 58笔试通过但面试没有过,面试我的人首先问的还是数仓建模,我当时这方面还是刚学,不是很懂,问的建模细节还是不会,直接挂了,但整体还是可以的,薪资估计16起步吧,双非本科估计就是最低的白菜价

  • 1.自我介绍 2. 强缓存,协商缓存 3. 跨域 4. 性能优化,如果页面白屏怎么解? 5. 深挖项目 6. 快排算法

  • 今天早上第一家面试的,自己感觉有点没睡醒,面试官年纪比较大,看起来比较严肃 上来自我介绍 问了一下为什么做开发的转产品 介绍一下实习的时候做了什么 认为产品经理最需要什么能力 自己对于当产品经理最大的优势和劣势 实习过程中最有成就的事 你为什么这么做,难点在于什么 出了一个场景题,如何解决十字路口堵塞问题,给了两分钟思考,讲了一下大概思路后面试官补充了题目的信息让我继续思考,这部分感觉答的一般,面

  • 数据挖掘 18 大算法实现以及其他相关经典 DM 算法,BIRCH 算法本身上属于一种聚类算法,不过他克服了一些 K-Means 算法的缺点。