记录一次python爬虫与反爬行动

本文记录了一次使用Python爬虫应对复杂反爬策略的过程,包括分析加密参数、模拟JavaScript加密算法以及解决请求头限制等问题。通过Chrome抓包、断点调试JS代码,最终成功获取正确响应,但指出实际应用中还需考虑IP限制、查询词处理等挑战。
摘要由CSDN通过智能技术生成
爬取目标:

首页 8d93120efc7aac31648363dabd3ff4e9
接口:805E4C9121CC89786CEE70F095EACBDF

使用工具及涉及知识点

语言:Python===3.6
模块:requests random time hashlib-->md5
浏览器:chrome96

事件起因

看到某群组里面讨论目标很难爬取,各种参数加密。于是抱着好奇心搞起…
网站本身有开发者平台提供api,但是有使用次数限制。

开启反爬之路
  1. 使用Chrome抓包工具找到接口入口网址,发现需要携带一堆参数提交POST请求
    在这里插入图片描述

  2. 直接使用现有的参数向目标接口发送请求(未携带header参数),得到{errorcod:50},请求失败,说明网站在请求头参数进行了反爬限制。

  3. 挨个尝试请求头参数:发现需要携带3个请求头参数User-Agent Cookies Referer,携带post表单发起请求,得到了正确的响应结果,BUT,更换查询词后,又收到了{errorcod:50}的错误。说明参数具有时效性或者绑定了查询词。开始debug js代码

  4. 根据堆栈根据找到js源码,查找加密参数位置,进行断点调试
    在这里插入图片描述

发现目标参数有15个,找到能看懂的一个位置进行解析(包含了sign和bv两个加密参数)。

var r = function(e) {
   
       var t = n.md5
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值