搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
Python3反爬虫原理与绕过实战/图灵原创
0.00     定价 ¥ 89.00
图书来源: 浙江图书馆(由浙江新华配书)
此书还可采购12本,持证读者免费借回家
  • 配送范围:
    浙江省内
  • ISBN:
    9787115528735
  • 作      者:
    作者:韦世东|责编:王军花
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2020-01-01
收藏
编辑推荐

【人气推荐】《Python 3 网络爬虫开发实战》作者、微软小冰工程师崔庆才作序,腾讯、马蜂窝工程师倾力推荐。
   
【干货满满】爬虫工程师不可错过的“****”,内容包括但不限于Cookie 反爬虫、WebSocket 反爬虫、字体反爬虫、WebDriver反爬虫、App 反爬虫、验证码反爬虫。
   
【反爬虫原理+爬虫实战】从实战出发,印证国内互联网企业内部加密原理,侧重讲解反爬虫的原理以及绕过方法。
   
【21个反爬虫示例】结合练习平台 Steamboat,帮助读者随时复现书中的 21个爬虫示例,巩固所学知识。    


展开
作者简介

韦世东,资深爬虫工程师,2019年华为云·云享专家,掘金社区优秀作者,GitChat认证作者,夜幕团队(NightTeam)成员。拥有七年互联网从业经验,擅长反爬虫的设计和绕过技巧。    


展开
内容介绍

本书首先介绍了开发环境的配置,接着讨论了Web网站的构成和页面渲染、动态网页和静态网页对爬虫造成的影响,紧接着详细介绍了信息校验型反爬虫、动态渲染反爬虫、文本混淆反爬虫知识、特征识别反爬虫的原理、实现和绕过,然后概览了App数据爬取的关键和常用的反爬虫手段,最后介绍了常见的编码和加密原理、JavaScript代码混淆知识、前端禁止事件以及与爬虫相关的法律知识和风险点。    


展开
精彩书评
  本书内容十分详尽,几乎涵盖了市面上所有的反爬虫类型,包括但不限于   Cookie 反爬虫、WebSocket 反爬虫、字体反爬虫、WebDriver 反爬虫、App   反爬虫、验证码反爬虫。书中首先对各类反爬虫技术进行了合理的归类,然后通过剖析多个案例帮助大家理解各类反爬虫技术的原理。另外,书中还针对各类反爬虫给出了对应的绕过和破解方案。这本书干货满满,可以帮助大家全面了解爬虫和反爬虫的各类技术,强烈推荐给大家。
  —— 崔庆才
  微软小冰工程师
  《Python 3 网络爬虫开发实战》作者

  在大数据时代,所有公司都离不开数据,而获取数据非常快的方式就是利用爬虫去爬取。随着爬虫的增多,反爬虫水平也在不断提高。本书作者自己搭建了 21   个示例,深入解析了 CSS 偏移、字体反爬虫、JavaScript 混淆、App   逆向、验证码破解和加密算法等知识,并用详细的代码手把手教你如何实现反爬虫以及如何破解反爬虫,让大家真正做到“知其然,知其所以然”。强烈推荐给每一位想要从事爬虫工作,以及希望提高爬虫技术水平的朋友们。
  —— 陈祥安
  马蜂窝高级工程师

  我见证了作者从一个零基础小白逐渐成长为一名出色的爬虫工程师的过程。相信本书不仅是技术满满的干货集,也是他记录成长历程的诚意之作!
  —— BruceDone
  腾讯后端开发工程师
展开
目录
第 1章 开发环境配置 1
1.1 操作系统的选择 1
1.1.1 Ubuntu 简介 1
1.1.2 VirtualBox 的安装 2
1.1.3 安装 Ubuntu 3
1.1.4 全屏设置 8
1.1.5 Python 设置 9
1.2 练习平台 Steamboat 10
1.2.1 安装 Docker 11
1.2.2 安装 Steamboat 12
1.2.3 Steamboat 使用说明 14
1.3 第三方库的安装 15
1.3.1 Requests 15
1.3.2 Selenium 15
1.3.3 浏览器驱动 16
1.3.4 Splash 18
1.3.5 Puppeteer 18
1.3.6 PyTesseract 20
1.4 常用软件的安装 21
1.4.1 nginx 21
1.4.2 Charles 22
1.4.3 PC端 SSL 证书 23
1.4.4 iOS 系统的证书设置 26
1.4.5 Andriod 模拟器的安装与证书设置 27
1.4.6 Postman 29
1.4.7 Google Chrome 32
1.4.8 JADX 33
1.5 深度学习环境配置 35
1.5.1 NVIDIA显卡驱动安装 35
1.5.2 CUDA Toolkit 的安装 38
1.5.3 cuDNN 的安装 40
1.5.4 深度学习库 PyTorch 41
1.5.5 深度学习框架 Darknet 42
1.5.6 图片标注工具 LabelImg 43
1.6 Node.js 环境配置 44
1.6.1 Node.js 的安装 44
1.6.2 UglifyJS 的安装 45
第 2章 Web网站的构成和页面渲染 47
2.1 nginx服务器 47
2.1.1 nginx的信号 48
2.1.2 nginx配置文件 49
2.1.3 简单的代理服务 50
2.1.4 nginx模块与指令 52
2.1.5 nginx日志 57
2.1.6 小结 58
2.2 浏览器 58
2.2.1 浏览器的主要结构 59
2.2.2 页面渲染 60
2.2.3 HTML DOM 62
2.2.4 浏览器对象BOM 65
2.2.5 小结 70
2.3 网络协议 71
2.3.1 认识HTTP 71
2.3.2 资源与资源标识符 72
2.3.3 HTTP请求与响应 74
2.3.4 Cookie 77
2.3.5 了解HTTPS 80
2.3.6 认识WebSocket 81
2.3.7 WebSocket握手 81
2.3.8 数据传输与数据帧 83
2.3.9 WebSocket连接 85
2.3.10 连接保持 87
2.3.11 小结 88
本章总结 88
第3章 爬虫与反爬虫 89
3.1 动态网页与网页源代码 89
3.2 爬虫知识回顾 90
3.3 反爬虫的概念与定义 95
本章总结 96
第4章 信息校验型反爬虫 97
4.1 User-Agent 反爬虫 97
4.1.1 User-Agent 反爬虫绕过实战 97
4.1.2 User-Agent 反爬虫的原理与实现 100
4.1.3 小结 103
4.2 Cookie 反爬虫 103
4.2.1 Cookie 反爬虫绕过实战 103
4.2.2 Cookie 反爬虫原理与实现 109
4.2.3 Cookie 与 JavaScript 结合 110
4.2.4 用户过滤 112
4.2.5 小结 113
4.3 签名验证反爬虫 114
4.3.1 签名验证反爬虫绕过实战 114
4.3.2 签名验证反爬虫原理与实现 121
4.3.3 有道翻译反爬虫案例 123
4.3.4 小结 125
4.4 WebSocket 握手验证反爬虫 125
4.5 WebSocket 消息校验反爬虫 129
4.5.1 WebSocket 消息校验反爬虫示例 130
4.5.2 乐鱼体育反爬虫案例 132
4.6 WebSocket Ping反爬虫 133
本章总结 134
第5章 动态渲染反爬虫 135
5.1 常见的动态渲染反爬虫案例 135
5.1.1 自动执行的异步请求案例 135
5.1.2 点击事件和计算 138
5.1.3 下拉加载和异步请求 142
5.1.4 小结 144
5.2 动态渲染的通用解决办法 144
5.2.1 Selenium 套件 144
5.2.2 异步渲染库 Puppeteer 148
5.2.3 异步渲染服务 Splash 150
5.2.4 通用不一定适用 154
5.2.5 渲染工具知识扩展 156
5.2.6 小结 160
本章总结 160
第6章 文本混淆反爬虫 161
6.1 图片伪装反爬虫 161
6.1.1 图片伪装反爬虫绕过实战 161
6.1.2 广西人才网反爬虫案例 164
6.1.3 小结 165
6.2 CSS 偏移反爬虫 165
6.2.1 CSS 偏移反爬虫绕过实战 166
6.2.2 去哪儿网反爬虫案例 172
6.2.3 小结 174
6.3 SVG 映射反爬虫 174
6.3.1 SVG 映射反爬虫绕过实战 174
6.3.2 大众点评反爬虫案例 177
6.3.3 SVG 反爬虫原理 179
6.3.4 小结 186
6.4 字体反爬虫 186
6.4.1 字体反爬虫示例 186
6.4.2 字体文件 WOFF 189
6.4.3 字体反爬虫绕过实战 196
6.4.4 小结 198
6.5 文本混淆反爬虫通用解决办法 199
6.5.1 光学字符识别 OCR 199
6.5.2 PyTesseract 的缺点 201
6.5.3 文字识别 API 202
6.5.4 小结 206
本章总结 206
第7章 特征识别反爬虫 207
7.1 WebDriver 识别 207
7.1.1 WebDriver 识别示例 207
7.1.2 WebDriver 识别原理 210
7.1.3 WebDriver 识别的绕过方法 211
7.1.4 淘宝网 WebDriver 案例 214
7.1.5 小结 215
7.2 浏览器特征 215
7.3 爬虫特征 219
7.3.1 访问频率限制绕过实战 219
7.3.2 访问频率限制的原理与实现 222
7.3.3 浏览器指纹知识扩展 223
7.3.4 淘宝网浏览器指纹案例 227
7.3.5 小结 228
7.4 隐藏链接反爬虫 228
7.4.1 隐藏链接反爬虫示例 228
7.4.2 隐藏链接反爬虫原理与实现 231
7.4.3 小结 233
本章总结 234
第8章 App反爬虫 235
8.1 App 抓包 235
8.1.1 HTTP 抓包示例 235
8.1.2 掌上英雄联盟抓包案例(HTTP) 240
8.1.3 京东商城抓包案例(HTTPS) 243
8.1.4 小结 246
8.2 APK文件反编译 246
8.2.1 App 签名验证反爬虫示例 246
8.2.2 APK文件反编译实战 248
8.2.3 小结 251
8.3 代码混淆反爬虫 251
8.3.1 Android 代码混淆原理 252
8.3.2 掘金社区 App 代码混淆案例 255
8.3.3 小结 257
8.4 App 应用加固知识扩展 257
8.5 了解应用程序自动化测试工具 260
8.5.1 了解 Appium 260
8.5.2 了解 Airtest Project 260
8.5.3 小结 262
本章总结 262
第9章 验证码 263
9.1 字符验证码 263
9.1.1 字符验证码示例 263
9.1.2 实现字符验证码 266
9.1.3 深度学习的概念 269
9.1.4 卷积神经网络的概念 272
9.1.5 使用卷积神经网络预测验证码 276
9.1.6 小结 286
9.2 计算型验证码 286
9.2.1 计算型验证码示例 286
9.2.2 实现计算型验证码 288
9.2.3 小结 291
9.3 滑动验证码 291
9.3.1 滑动验证码示例 291
9.3.2 实现滑动验证码 295
9.3.3 小结 298
9.4 滑动拼图验证码 298
9.4.1 滑动拼图验证码示例 299
9.4.2 实现滑动拼图验证码 302
9.4.3 难度升级 307
9.4.4 图片中的缺口位置识别 308
9.4.5 小结 310
9.5 文字点选验证码 310
9.5.1 文字点选验证码示例 310
9.5.2 实现文字点选验证码 312
9.5.3 目标检测的概念 316
9.5.4 深度学习实现文字定位 317
9.5.5 批量检测与坐标输出 323
9.5.6 小结 330
9.6 鼠标轨迹的检测和原理 330
9.7 验证码产品赏析 336
9.7.1 滑动验证码 336
9.7.2 图标验证码 337
9.7.3 空间推理验证码 338
9.7.4 小结 338
本章总结 338
第 10章 综合知识 339
10.1 编码与加密 339
10.1.1 ASCII 编码 339
10.1.2 详解 Base64 342
10.1.3 基于编码的反爬虫设计 344
10.1.4  MD5消息摘要算法 347
10.1.5 对称加密与 AES 352
10.1.6 非对称加密与 RSA 357
10.1.7 小结 360
10.2 JavaScript 代码混淆 360
10.2.1 常见的混淆方法 361
10.2.2 混淆代码的还原 363
10.2.3 混淆原理 365
10.2.4 实现一个简单的混淆器 366
10.2.5 小结 369
10.3 前端禁止事件 369
10.3.1 禁止鼠标事件 370
10.3.2 禁止键盘事件 371
10.3.3 小结 372
10.4 法律法规 372
10.4.1 数据安全管理办法征求意见稿 374
10.4.2 爬虫协议 Robots 375
10.4.3 与爬虫相关的法律法规 376
10.4.4 小结 377
本章总结 377
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证