- ISBN:9787115479679
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:196
- 出版时间:2017-05-01
- 条形码:9787115479679 ; 978-7-115-47967-9
本书特色
《用Python写网络爬虫(第 2版》讲解了如何使用Python来编写网络爬虫程序,内容包括网络爬虫简介,从页面中抓取数据的3种方法,提取缓存中的数据,使用多个线程和进程进行并发抓取,抓取动态页面中的内容,与表单进行交互,处理页面中的验证码问题,以及使用Scarpy和Portia进行数据抓取,并在*后介绍了使用本书讲解的数据抓取技术对几个真实的网站进行抓取的实例,旨在帮助读者活学活用书中介绍的技术。 《用Python写网络爬虫(第 2版》适合有一定Python编程经验而且对爬虫技术感兴趣的读者阅读。
内容简介
《用Python写网络爬虫(第 2版》讲解了如何使用Python来编写网络爬虫程序,内容包括网络爬虫简介,从页面中抓取数据的3种方法,提取缓存中的数据,使用多个线程和进程进行并发抓取,抓取动态页面中的内容,与表单进行交互,处理页面中的验证码问题,以及使用Scarpy和Portia进行数据抓取,并在很后介绍了使用本书讲解的数据抓取技术对几个真实的网站进行抓取的实例,旨在帮助读者活学活用书中介绍的技术。《用Python写网络爬虫(第 2版》适合有一定Python编程经验而且对爬虫技术感兴趣的读者阅读。
目录
1.1 网络爬虫何时有用 1
1.2 网络爬虫是否合法 2
1.3 Python 3 3
1.4 背景调研 4
1.4.1 检查robots.txt 4
1.4.2 检查网站地图 5
1.4.3 估算网站大小 6
1.4.4 识别网站所用技术 7
1.4.5 寻找网站所有者 9
1.5 编写第 一个网络爬虫 11
1.5.1 抓取与爬取的对比 11
1.5.2 下载网页 12
1.5.3 网站地图爬虫 15
1.5.4 ID遍历爬虫 17
1.5.5 链接爬虫 19
1.5.6 使用requests库 28
1.6 本章小结 30
第 2章 数据抓取 31
2.1 分析网页 32
2.2 3种网页抓取方法 34
2.2.1 正则表达式 35
2.2.2 Beautiful Soup 37
2.2.3 Lxml 39
2.3 CSS选择器和浏览器控制台 41
2.4 XPath选择器 43
2.5 LXML和家族树 46
2.6 性能对比 47
2.7 抓取结果 49
2.7.1 抓取总结 50
2.7.2 为链接爬虫添加抓取回调 51
2.8 本章小结 55
第3章 下载缓存 56
3.1 何时使用缓存 57
3.2 为链接爬虫添加缓存支持 57
3.3 磁盘缓存 60
3.3.1 实现磁盘缓存 62
3.3.2 缓存测试 64
3.3.3 节省磁盘空间 65
3.3.4 清理过期数据 66
3.3.5 磁盘缓存缺点 68
3.4 键值对存储缓存 69
3.4.1 键值对存储是什么 69
3.4.2 安装Redis 70
3.4.3 Redis概述 71
3.4.4 Redis缓存实现 72
3.4.5 压缩 74
3.4.6 测试缓存 75
3.4.7 探索requests-cache 76
3.5 本章小结 78
第4章 并发下载 79
4.1 100万个网页 79
4.2 串行爬虫 82
4.3 多线程爬虫 83
4.4 线程和进程如何工作 83
4.4.1 实现多线程爬虫 84
4.4.2 多进程爬虫 87
4.5 性能 91
4.6 本章小结 94
第5章 动态内容 95
5.1 动态网页示例 95
5.2 对动态网页进行逆向工程 98
5.3 渲染动态网页 104
5.3.1 PyQt还是PySide 105
5.3.2 执行JavaScript 106
5.3.3 使用WebKit与网站交互 108
5.4 渲染类 111
5.5 本章小结 117
第6章 表单交互 119
6.1 登录表单 120
6.2 支持内容更新的登录脚本扩展 128
6.3 使用Selenium实现自动化表单处理 132
6.4 本章小结 135
第7章 验证码处理 136
7.1 注册账号 137
7.2 光学字符识别 140
7.3 处理复杂验证码 144
7.4 使用验证码处理服务 144
7.4.1 9kw入门 145
7.4.2 报告错误 150
7.4.3 与注册功能集成 151
7.5 验证码与机器学习 153
7.6 本章小结 153
第8章 Scrapy 154
8.1 安装Scrapy 154
8.2 启动项目 155
8.2.1 定义模型 156
8.2.2 创建爬虫 157
8.3 不同的爬虫类型 162
8.4 使用shell命令抓取 163
8.4.1 检查结果 165
8.4.2 中断与恢复爬虫 167
8.5 使用Portia编写可视化爬虫 170
8.5.1 安装 170
8.5.2 标注 172
8.5.3 运行爬虫 176
8.5.4 检查结果 176
8.6 使用Scrapely实现自动化抓取 177
8.7 本章小结 178
第9章 综合应用 179
9.1 Google搜索引擎 179
9.2 Facebook 184
9.2.1 网站 184
9.2.2 Facebook API 186
9.3 Gap 188
9.4 宝马 192
9.5 本章小结 196
作者简介
Katharine Jarmul是德国柏林的一位数据科学家和Python支持者。她经营了一家数据科学咨询公司——Kjamistan,为不同规模的企业提供诸如数据抽取、采集以及建模的服务。她从2008年开始使用Python进行编程,从2010年开始使用Python抓取网站,并且在使用网络爬虫进行数据分析和机器学习的不同规模的初创企业中工作过。读者可以通过Twitter(@kjam)关注她的想法以及动态。 Richard Lawson来自澳大利亚,毕业于墨尔本大学计算机科学专业。毕业后,他创办了一家专注于网络爬虫的公司,为超过50个国家的业务提供远程工作。他精通世界语,可以使用汉语和韩语对话,并且积极投身于开源软件事业。他目前正在牛津大学攻读研究生学位,并利用业余时间研发自主无人机。 译者介绍 李斌,毕业于北京科技大学计算机科学与技术专业,获得硕士学位。曾任职于阿里巴巴,当前供职于凡普金科,负责应用安全工作。热爱Python编程和Web安全,希望以更加智能和自动化的方式提升网络安全。博客地址为pythoner.com。
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥37.7¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥77.4¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0 -
PREMIERE PRO 2023全面精通:视频剪辑+颜色调整+转场特效+字幕制作+案例实战
¥69.3¥99.0