《爬虫逆向进阶实战》是由机械工业出版社出版的一本关于爬虫方面的书籍,作者是李玺,主要介绍了关于爬虫、爬虫实战方面的知识内容,目前在爬虫类书籍综合评分为:7.4分。
书籍介绍
内容简介
本书以爬虫逆向方向的相关技术和岗位要求进行撰写,总结了爬虫的架构体系、主流框架和未来发展。书中包括各种自动化工具、抓包工具、逆向工具的使用。核心内容以WebJs逆向、安卓逆向、小程序逆向为主,结合三十多个实战案例进行分析,内容从易到难,循序渐进。另外还对主流的反爬虫技术进行了讲解,包括传输协议、验证码体系、字符集映射、行为和指纹等。扫描封底二维码,可获得反爬虫补充知识;扫描节中二维码,可获得配套视频讲解知识。
本书适合对爬虫逆向感兴趣,想进一步提升自我的程序员参考阅读。
作者简介
李玺,作者久居一线开发,目前就职中科大数据研究院。深耕爬虫和逆向方向,拥有丰富的经验和精湛的技巧,独立开发过Asyncpy爬虫框架、crawlx爬虫管理平台。作者是CSDN博客专家,爬虫逆向社区站长,荣获CSDN首届GEEK原创大赛一等奖、2019、2020、2021年博客之星。拥有多项爬虫领域发明专利,新工科大数据技术能力认证,国家科技志愿者,河南省中原科技城E类人才。
目录
- 前言
- 第1章网络爬虫架构/
- 1.1爬虫发展史/
- 1.2爬虫基本架构/
- 1.3分布式爬虫架构/
- 1.3.1主从分布式/
- 1.3.2对等分布式/
- 1.4网络爬虫遍历策略/
- 1.4.1广度优先策略/
- 1.4.2深度优先策略/
- 1.4.3优先策略/
- 1.5智能采集系统架构/
- 1.5.1采集需求分类/
- 1.5.2页面智能解析/
- 1.5.3数据管理模块/
- 第2章Python爬虫技巧/
- 2.1Utils/
- 2.1.1爬虫工具包/
- 2.1.2智能解析库/
- 2.2Scrapy/
- 2.2.1Scrapy架构/
- 2.2.2Scrapy信号/
- 2.2.3Scrapy异常/
- 2.2.4Scrapy去重/
- 2.2.5Scrapy部署/
- 2.2.6Scrapy监控/
- 2.3Asyncpy/
- 2.3.1Asyncpy架构/
- 2.3.2Asyncpy安装/
- 2.3.3Asyncpy使用/
- 2.4Feapder/
- 2.4.1Feapder架构/
- 2.4.2Feapder使用/
- 2.4.3Feapder部署/
- 2.5ScrapyRedis/
- 2.5.1运行原理/
- 2.5.2源码解析/
- 2.5.3集群模式/
- 2.6Scrapy开发/
- 2.6.1Scrapy_helper/
- 2.6.2Webmagicx/
- 2.7Crawlab/
- 2.7.1Crawlab架构/
- 2.7.2Crawlab部署/
- 2.8代理IP工具/
- 2.8.1Proxy_pool/
- 2.8.2PyproxyAsync/
- 第3章WebJs逆向/
- 3.1逆向基础/
- 3.1.1语法基础/
- 3.1.2作用域/
- 3.1.3窗口对象属性/
- 3.1.4事件/
- 3.2浏览器控制台/
- 3.2.1Network/
- 3.2.2Sources/
- 3.2.3Application/
- 3.2.4Console/
- 3.3加密参数定位方法/
- 3.3.1巧用搜索/
- 3.3.2堆栈调试/
- 3.3.3控制台调试/
- 3.3.4监听XHR/
- 3.3.5事件监听/
- 3.3.6添加代码片/
- 3.3.7注入和Hook/
- 3.3.8内存漫游/
- 爬虫逆向进阶实战
- 3.4常见的压缩和混淆/
- 3.4.1webpack/
- 3.4.2eval混淆/
- 3.4.3aa和jj混淆/
- 3.4.4Jsfuck混淆/
- 3.4.5OLLVM混淆/
- 3.4.6soJson加密/
- 3.4.7lsb隐写/
- 3.5常见的编码和加密/
- 3.5.1base64/
- 3.5.2MD5/
- 3.5.3SHA1/
- 3.5.4HMAC/
- 3.5.5DES/
- 3.5.6AES/
- 3.5.7RSA/
- 3.6加密参数还原与模拟/
- 3.6.1Virustotal逆向入门案例/
- 3.6.2Newrank榜单逆向案例/
- 3.6.3MD5加密逆向案例/
- 3.6.4RSA参数加密逆向案例/
- 3.6.5AES数据加密逆向案例/
- 3.6.6AES链接加密逆向案例/
- 3.6.7CNVD加速乐分析案例/
- 3.7浏览器环境补充/
- 3.7.1常被检测的环境/
- 3.7.2手动补充环境/
- 3.7.3JSDOM环境补充/
- 3.7.4Selenium环境模拟/
- 3.7.5puppeteer环境模拟/
- 3.8浏览器环境监测/
- 3.8.1Proxyintercept/
- 3.8.2Objecthook/
- 3.9加密方法远程调用/
- 3.9.1微博登录参数RPC/
- 3.9.2抖音直播数据RPC/
- 3.9.3巨量指数签名RPC/
- 3.10常见协议分析/
- 3.10.1webSocket协议/
- 3.10.2Protobuf协议/
- 3.11常见反调试/
- 3.11.1无限Debugger/
- 3.11.2无法打开控制台/
- 3.11.3禁用控制台输出/
- 3.11.4蜜罐和内存爆破/
- 3.11.5控制台状态检测/
- 3.12调试工具补充/
- 3.12.1WTJS调试工具/
- 3.12.2发条JS调试工具/
- 3.12.3鬼鬼JS调试工具/
- 3.13反混淆AST/
- 3.13.1节点类型对照表/
- 3.13.2节点属性和方法/
- 3.13.3拆解简单ob混淆/
- 3.13.4用AST还原代码/
- 第4章自动化工具的应用/
- 4.1Selenium/
- 4.1.1工具简介/
- 4.1.2基本操作/
- 4.1.3调用JavaScript/
- 4.1.4采集案例/
- 4.1.5检测应对/
- 4.2Pyppeteer/
- 4.2.1工具简介/
- 4.2.2使用方法/
- 4.2.3检测应对/
- 4.2.4拦截器/
- 4.3cefPython3/
- 4.3.1安装和使用/
- 4.3.2浏览器配置/
- 4.3.3客户端控制/
- 4.3.4文档解析/
- 4.3.5爬虫实战/
- 4.4Playwright/
- 4.4.1工具安装/
- 4.4.2基本使用/
- 4.4.3异步任务/
- 4.4.4自动录制/
- 4.5Appnium/
- 4.5.1Appnium概念/
- 4.5.2Appnium配置/
- 4.5.3Appnium测试/
- 4.6Airtest/
- 4.6.1设备连接/
- 4.6.2窗口介绍/
- 4.6.3简单测试/
- 4.7Auto.js/
- 4.7.1工具简介/
- 4.7.2使用案例/
- 4.7.3指数查询案例/
- 第5章抓包工具的应用/
- 5.1Fiddler/
- 5.1.1Fiddler配置/
- 5.1.2Fiddler断点/
- 5.1.3Fiddler接口调试/
- 5.1.4Fiddler替换Js文件/
- 5.1.5Fiddler保存响应内容/
- 5.1.6Fiddler监听webSocket/
- 5.2Charles/
- 5.2.1Charles配置/
- 5.2.2Charles断点/
- 5.2.3Charles保存响应内容/
- 5.2.4Charles监听webSocket/
- 5.3MitmProxy/
- 5.3.1工具介绍/
- 5.3.2安装配置/
- 5.3.3替换浏览器Js/
- 5.3.4公众号拦截案例/
- 5.3.5移动端拦截案例/
- 5.4HTTPAnalyzerStdV7/
- 5.5HTTPCanary/
- 5.6Postern/
- 5.6.1规则配置/
- 5.6.2配合抓包/
- 5.7Drony/
- 5.7.1工具介绍/
- 5.7.2配合抓包/
- 5.8Wireshark/
- 5.8.1Wireshark介绍/
- 5.8.2Wireshark技巧/
- 第6章Android逆向/
- 6.1Android逆向基础/
- 6.1.1APK/
- 6.1.2DEX/
- 6.1.3Smali/
- 6.1.4ARM/
- 6.1.5Android应用启动过程/
- 6.1.6逆向通用分析步骤/
- 6.2Android逆向工具/
- 6.2.1AndroidKiller/
- 6.2.2Jadx/
- 6.2.3JEB/
- 6.2.4IDAPro/
- 6.2.5MT管理器/
- 6.2.6NP管理器/
- 6.3AndroidHook工具/
- 6.3.1Xposed/
- 6.3.2Frida/
- 6.3.3Unidbg/
- 6.3.4Magisk/
- 6.3.5TaiChi/
- 6.4Android混淆和加密/
- 6.4.1Android混淆技术/
- 6.4.2Android加密技术/
- 6.5加密参数定位方法/
- 6.5.1静态分析/
- 6.5.2动态分析/
- 6.5.3日志注入/
- 6.5.4动态调试/
- 6.5.5技巧补充/
- 6.6Android加固和脱壳/
- 6.6.1加固概念/
- 6.6.2查壳工具/
- 6.6.3脱壳工具/
- 6.7常见检测及绕过/
- 6.7.1双进程保护/
- 6.7.2权限检测/
- 6.7.3调试端口检测/
- 6.7.4进程名检测/
- 6.7.5系统函数检测/
- 6.7.6执行时间检测/
- 6.8Android群控和云机/
- 6.8.1Android群控/
- 6.8.2Android云机/
- 第7章小程序逆向/
- 7.1小程序逆向基础/
- 7.1.1反编译流程/
- 7.1.2反编译案例/
- 7.2小程序Hook/
- 7.2.1逻辑层Hook/
- 7.2.2渲染层Hook/
- 7.3小程序逆向分析案例/
- 7.4Windows小程序逆向/
- 7.4.1确定包位置/
- 7.4.2提取wxpkg/
- 第8章抓包技巧汇总/
- 8.1证书认证/
- 8.1.1SSL单向认证/
- 8.1.2SSL双向认证/
- 8.2不走代理/
- 8.3协议降级/
- 8.4自定义协议/
- 8.4.1Quic协议抓包/
- 8.4.2Spdy协议抓包/
- 8.5方法补充/
- 第9章Android逆向案例/
- 9.1某新闻加密参数分析和还原/
- 9.1.1接口分析/
- 9.1.2源码分析/
- 9.1.3动态分析/
- 9.1.4加密还原/
- 9.2某App签名Frida还原/
- 9.2.1接口分析/
- 9.2.2反编译App/
- 9.2.3静态分析参数/
- 9.2.4动态获取签名/
- 9.2.5加密算法还原/
- 9.3某App加密参数Xposed调用/
- 9.3.1静态分析源码/
- 9.3.2编写Hook脚本/
- 9.3.3搭建http服务/
- 9.4某App参数FridaFlaskRPC/
- 9.4.1反编译APK/
- 9.4.2静态分析Sig/
- 9.4.3调试和RPC/
- 9.4.4搭建Flask服务/
- 9.5某App加密参数Unidbg生成/
- 9.5.1接口分析/
- 9.5.2Frida调试/
- 9.5.3Unidbg调用/
- 9.5.4Unidbg补环境/
- 9.5.5Web服务搭建/
- 9.6某资讯加固脱壳和参数分析/
- 9.6.1抓包分析接口/
- 9.6.2360加固脱壳和反编译/
- 9.6.3源码静态分析/
- 9.6.4通过Hook调用/
- 9.7某新闻加固脱壳和参数分析/
- 9.7.1抓包分析接口/
- 9.7.2腾讯加固脱壳和反编译/
- 9.7.3源码静态分析/
- 9.7.4so文件分析/
- 9.7.5Frida动态调试/
- 9.7.6加密算法还原/
- 9.8某监管Root检测绕过/
- 9.8.1梆梆加固脱壳和反编译/
- 9.8.2源码静态分析/
- 9.8.3Frida绕过Root检测/
- 第10章验证码识别技术/
- 10.1图文验证码/
- 10.1.1利用开源库识别/
- 10.1.2验证码图像处理/
- 10.1.3机器学习识别验证码/
- 10.1.4深度学习识别验证码/
- 10.2滑块验证码/
- 10.2.1邮箱滑块验证码/
- 10.2.2数美滑块验证码/
- 10.2.3极验滑块验证码/
- 10.2.4利用AI平台识别缺口/
- 10.3点选验证码/
- 10.4短信验证码/
- 10.4.1Xposed拦截短信/
- 10.4.2GsmModem接收短信/
- 10.4.3太极验证码提取器/
-
10.4.4批量短信处理/