Hi,大家好,欢迎大家参阅由IT猫之家精心制作的JS实战系列教学课程,我是作者叮当猫,在本期教学中,我将引导大家快速寻找出加密函数的入口,本期教学仍然是以并爹爹(某多)旗下的某个商城作为目标,在此之前,我已经做过两期教学,如果您还未曾看过,欢迎前往:拼夕夕网络爬虫频道 查阅,本期仅作为补充完善前两期的不足,如大家在此之后仍有不懂的欢迎留言,或加入我们的QQ技术交流群探讨:544185435

由于该加密参数是在异步地址触发后携带的,所以我们需要先找到该地址,然后使用Chrome提供的XHR断点机制进行捕获执行过程,这里,我们经过观察后发现携带该加密参数的url为: https://youhui.pinduoduo.com/network/api/goods/common/list,那么我们跟前面文章一样,将它加入XHR断点匹配条件中,并勾上该规则,如上图。

开启XHR断点监控后,我们直接拖动右侧的滚动条,如无意外,网页加载会被打断,并如上图所示停了下来,为了更好的分析代码,我们需要点击左边下角箭头所指向的花括号,作用是格式化代码。

如无意外的话,我们将会看到包含我们需要的携带了加密字段的一串字符串便会出现在我们眼前,(如果你还没看到,请不用着急,可能还没加载出来罢了,要么就是你写错地址了)。

我们不难发现,并爹爹新版本的加密方案采用了大量的异步函数,这使得我们调试起来增加了不少的难度,为了减少工作量,我整理出了一种较为取巧的方式,当然肯定还有更好的方式,这仅仅只是我想到的其中的一种方式而已,这种方式是通过定位一个必经函数,然后判断其次数,当密文区间于x与y之间,那么我们便可以通过当此调用单步往下执行寻找出加密函数的入口。

我们这里以 var l = x(e, t, n); 作为定位函数,并在左边打上断点,然后我们拖动滚动条,(记得先关闭XHR的断点哦),如无意外,它会与前面的一样,会断了下来,那么接下来我们要做的是点击面板上的播放标志(这好像是老式DVD里的播放标志?),别管他是啥,点就对了,重点是要记录,它会在第几次出现包含加密内容的字符串,不过我这里点了好几次,都没看到,而且,已经点完了,so,它并不是我们要的定位点,pass掉吧,别灰心,没有失败谈什么成功呢?是吧?

既然上一个函数不行,那就再找一个呗,如图,我们这次定位到:return this._invoke(t, e) 这个方法中,同样的,我们也是点击面板上的那个“播放标志”其实我们也可以按“F8”键的啦,这个随便了,(要记得先放行本次的XHR捕获哦!),不难发现,我们在点击第二次的时候,包含加密数据的字符串出现在我们的眼中了,那么这个定位极有可能就是正确的,接着,我们就按F11单步的走吧,这里我们需要注意了,慎用F10,因为按F10,很容易就错过了,特别是这种异步函数发起的请求。

我们现在要做的是一直按F11往下走,但不要狂按,要根据实际情况来操作,否则很有可能就错过了。

看到上图圈圈里圈着的那个函数了嘛?这里有个l的方法里面包含了一个n的变量,其实它不是我们要找的函数入口,之所以截出来是想告诉大家,千万不要错过任何一个可能的细节,万一这个l函数就是呢?是吧,所以我们每走一步都需要特别留意每一个函数的调用,必要时,我们可以将这个函数打印到控制台中,看看是否为我们找到函数。

所以,我们继续往下走,如上图,我们又尝试输出一个函数,可惜,这也不是我们需要的函数,别放弃,这也意味着你离成功更近了,我们继续往下走,继续按F11,总之我们不要放过任何一个可能的函数。

皇天不负有心人,最终,我们在这个“he”的函数中找到了它,没错,从上图看来,它并不特别且一点也不显眼,它就这么一个“e[c(“0xec”, “ogba”)](he)”便调用了加密,我们如果不够心细,根本就不可能发现它,对吧,我们通过控制台的输出可以看到,这个he就是我们要找的入口函数,怎么样?其实也不难找吧?

总结

本期教学主要是为了弥补前一期的不足,在这期的教学中,我给大家演示了一便详细的调试过程,以便于大家更好的掌握该技巧,大家也可以到Youtube 或到 Youku 观看我们提供的教学视频,(如果您喜欢本系列视频,欢迎点击订阅我们的频道)在此声明:本站提供的这一系列教学仅供学术与交流之用,并非有意或蓄意破坏相关网站,如您认为本站侵犯了您的权益,请留言,我将配合删除一切相关的文章、视频;目前我们的视频仅上传了Youtube与Youku,都是免费开放的!

原文转至:IT猫之家 转载请注明出处!

拼多多爬虫python_【网络爬虫教学】快速定位拼多多加密算法入口(四)相关推荐

  1. 什么叫爬虫python_网络爬虫是什么?

    互联网诞生之初,是为了让人们更容易的分享数据.交流通讯.互联网是桥梁,连接了世界各地的人们.网站的点击.浏览都是人为的,与你聊天的也是活生生的人.然而,随着技术的发展,人们对数据的渴望,出现了各种网络 ...

  2. 第一章 爬虫(认识网络爬虫)

    第一章      认识网络爬虫 1.1 什么是网络爬虫 网络爬虫: 一种按规则,自动请求网站并提取网页数据的程序或脚本 网络爬虫分类(按照系统结构和技术划分): 1.通用网络爬虫 2.聚焦网络爬虫 3 ...

  3. 什么是网络爬虫,网络爬虫的职能是什么?

    什么是网络爬虫,网络爬虫的职能是什么.网络蜘蛛即Web Spider,是一个很形象的名字.把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛.网络蜘蛛是通过网页的链接地址来寻找网页,从 ...

  4. c++字符串加密_【网络爬虫教学】快速定位拼多多加密算法入口(四)

    Hi,大家好,欢迎大家参阅由IT猫之家精心制作的JS实战系列教学课程,我是作者叮当猫,在本期教学中,我将引导大家快速寻找出加密函数的入口,本期教学仍然是以并爹爹(某多)旗下的某个商城作为目标,在此之前 ...

  5. 详解网络爬虫:网络爬虫是干什么的?有哪些应用场景?

    随着互联网信息的爆炸,网络爬虫渐渐为人所熟知.作为一种自动爬取网页信息的手段,很多人其实都不太清楚它在实际生活的巨大作用.那么,网络爬虫是干什么的?有哪些应用场景呢?简单来讲,搜索引擎.统计数据.出行 ...

  6. python网络爬虫_Python网络爬虫——爬取视频网站源视频!

    原标题:Python网络爬虫--爬取视频网站源视频! 学习前提 1.了解python基础语法 2.了解re.selenium.BeautifulSoup.os.requests等python第三方库 ...

  7. java https 网络爬虫_Java 网络爬虫,就是这么的简单

    这是 Java 网络爬虫系列文章的第一篇,如果你还不知道 Java 网络爬虫系列文章,请参看 学 Java 网络爬虫,需要哪些基础知识.第一篇是关于 Java 网络爬虫入门内容,在该篇中我们以采集虎扑 ...

  8. 豆瓣网络爬虫-java网络爬虫[验证码模拟登陆]详细介绍

    目录 抓包介绍 解决验证码的思路 验证码地址拼接 爬虫实战 爬虫架构 model main 解析htmlparse 数据库操作程序db 近期,有人将本人博客,复制下来,直接上传到百度文库等平台. 本文 ...

  9. lofter 爬虫_Python网络爬虫1 - 爬取网易LOFTER图片

    LOFTER是网易出品的优质轻博客,灵感源于国外的tumblr,但比之更加文艺,更加本地化.本人非常喜欢LOFTER的UI设计,以及其中的优质用户和内容,似乎网易并不擅长推广,所以受众并不广泛.这都是 ...

最新文章

  1. 一年融4轮,虎赞科技完成红杉领投3000万美元B轮融资
  2. 神秘的中国超算:比肩高铁的世界级领先
  3. 如何利用数据来支撑设计?
  4. 分库分表 vs NewSQL数据库
  5. 重拾面向对象软件设计
  6. 用jquery实现html5的placeholder功能
  7. 《你不常用的c#之五》:Thread与ThreadPool的内存之战
  8. bzoj 1716 找零钱
  9. MPEG2简单码流分析
  10. 计算机组装报告目录,计算机组装实验报告(共9篇).doc
  11. 蓝懿iOS培训日志22 图册
  12. windows 本地搭建git仓库_windows局域网搭建本地git代码版本管理仓库
  13. 解决“找不到msvcr120.dll,需要重新安装服务 ”最终版本
  14. java mysql sqlhelper_SQLHelper 的 java版本 - 转载
  15. 启用共享文件夹服务器,Windows Server 2008 启用公共文件夹共享
  16. 华为智慧屏鸿蒙os的特点,华为智慧屏功能特点一览
  17. CornerNet,CenterNet关键代码解读: kp,_decode,left pooling
  18. 微信小程序开发(学习记录1.0)
  19. Php5.6重启php-fpm,PHP5.6中php-fpm的配置、启动、关闭和重启
  20. SCAPE: shape completion and animation of people

热门文章

  1. mysql数据库恢复策略_数据库系统恢复策略概述
  2. 你问我答:刚毕业去一家小公司建议吗?待遇给的比大厂还高
  3. 微信小程序开发常用知识
  4. 数据产品经理踩坑之——数据无法上卷进行汇总需求文档梳理
  5. Ubuntu16.04 安装NVIDIA英伟达驱动教程 及常见几种报错Error的解决方案
  6. PCA(主成分分析方法)
  7. 2023最新SSM计算机毕业设计选题大全(附源码+LW)之java缺陷管理系统d6ltf
  8. 如何利用SAP邮箱发邮件
  9. 一个自动化立体库的详细方案ppt
  10. 基于Vite + Vue3 + Typescript 实现在线聊天项目