做为这种方便快捷地搜集在网上信息内容并从这当中提取出能用信息内容的方法,网络爬虫技术性变得更加有效。应用Python那样的简易计算机语言,你能应用小量程序编写专业技能就能够抓取繁杂的网址。
《用Python写网络爬虫》做为应用Python来抓取数据网络的优秀手册,解读了从静态网页抓取统计数据的方式及其应用缓存文件来管理方法网络服务器负荷的方式。除此之外,这书还详细介绍了怎么使用AJAX URL和Firebug拓展来抓取统计数据,及其相关抓取技术性的大量实情,例如应用电脑浏览器3D渲染、管理方法cookie、根据提交表单从受手机验证维护的繁杂网址中提取统计数据等。这书应用Scrapy建立了1个高級网络爬虫,并对某些真正的网址开展了抓取。
《用Python写网络爬虫》详细介绍了给出內容:
根据追踪连接来抓取网址;
应用lxml从网页页面中提取统计数据;
搭建进程网络爬虫来并行处理抓取网页页面;
将免费下载的內容开展缓存文件,以减少网络带宽耗费;
分析取决于JavaScript的网址;
与表格和应用程序开展互动;
处理受维护网页页面的手机验证难题;
对AJAX启用开展逆向工程;
应用Scrapy建立高級网络爬虫。
这书用户另一半
这书是为愿意搭建靠谱的统计数据抓取解决方法的开发者创作的,这书假设用户具备必须的Python程序编写工作经验。或许,具有别的计算机语言开发设计工作经验的用户还可以阅读文章这书,并了解书中涉及到的定义和基本原理。《用Python写网络爬虫》解读了怎么使用Python来撰写互联网网页爬虫,內容包含网络爬虫介绍,从网页页面中爬取统计数据的几种方式,获取缓存文件中的统计数据,应用好几个进程和系统进程来开展高并发爬取,怎样爬取动态性网页页面中的內容,与表格开展互动,解决网页页面中的手机验证难题,及其应用Scarpy和Portia来开展搜索引擎抓取,应用这书详细介绍的搜索引擎抓取技术性对好多个真正的网址开展了爬取,致力于协助用户以不变应万变书中详细介绍的技术性。
《用Python写网络爬虫》合适有必须Python程序编写工作经验,并且对网络爬虫喜欢的用户阅读文章。
目录
- 第1章 网络爬虫简介 1
- 1.1 网络爬虫何时有用 1
- 1.2 网络爬虫是否合法 2
- 1.3 背景调研 3
- 1.3.1 检查robots.txt 3
- 1.3.2 检查网站地图 4
- 1.3.3 估算网站大小 5
- 1.3.4 识别网站所用技术 7
- 1.3.5 寻找网站所有者 7
- 1.4 编写第一个网络爬虫 8
- 1.4.1 下载网页 9
- 1.4.2 网站地图爬虫 12
- 1.4.3 ID遍历爬虫 13
- 1.4.4 链接爬虫 15
- 1.5 本章小结 22
- 第2章 数据抓取 23
- 2.1 分析网页 23
- 2.2 三种网页抓取方法 26
- 2.2.1 正则表达式 26
- 2.2.2 Beautiful Soup 28
- 2.2.3 Lxml 30
- 2.2.4 性能对比 32
- 2.2.5 结论 35
- 2.2.6 为链接爬虫添加抓取回调 35
- 2.3 本章小结 38
- 第3章 下载缓存 39
- 3.1 为链接爬虫添加缓存支持 39
- 3.2 磁盘缓存 42
- 3.2.1 实现 44
- 3.2.2 缓存测试 46
- 3.2.3 节省磁盘空间 46
- 3.2.4 清理过期数据 47
- 3.2.5 缺点 48
- 3.3 数据库缓存 49
- 3.3.1 NoSQL是什么 50
- 3.3.2 安装MogoDB 50
- 3.3.3 MogoDB概述 50
- 3.3.4 MogoDB缓存实现 52
- 3.3.5 压缩 54
- 3.3.6 缓存测试 54
- 3.4 本章小结 55
- 第4章 并发下载 57
- 4.1 100万个网页 57
- 4.2 串行爬虫 60
- 4.3 多线程爬虫 60
- 4.3.1 线程和进程如何工作 61
- 4.3.2 实现 61
- 4.3.3 多进程爬虫 63
- 4.4 性能 67
- 4.5 本章小结 68
- 第5章 动态内容 69
- 5.1 动态网页示例 69
- 5.2 对动态网页进行逆向工程 72
- 5.3 渲染动态网页 77
- 5.3.1 PyQt还是PySide 78
- 5.3.2 执行JavaScript 78
- 5.3.3 使用WebKit与网站交互 80
- 5.3.4 Seleium 85
- 5.4 本章小结 88
- 第6章 表单交互 89
- 6.1 登录表单 90
- 6.2 支持内容更新的登录脚本扩展 97
- 6.3 使用Mechaize模块实现自动化表单处理 100
- 6.4 本章小结 102
- 第7章 验证码处理 103
- 7.1 注册账号 103
- 7.2 光学字符识别 106
- 7.3 处理复杂验证码 111
- 7.3.1 使用验证码处理服务 112
- 7.3.2 9kw入门 112
- 7.3.3 与注册功能集成 119
- 7.4 本章小结 120
- 第8章 Scrapy 121
- 8.1 安装 121
- 8.2 启动项目 122
- 8.2.1 定义模型 123
- 8.2.2 创建爬虫 124
- 8.2.3 使用shell命令抓取 128
- 8.2.4 检查结果 129
- 8.2.5 中断与恢复爬虫 132
- 8.3 使用Portia编写可视化爬虫 133
- 8.3.1 安装 133
- 8.3.2 标注 136
- 8.3.3 优化爬虫 138
- 8.3.4 检查结果 140
- 8.4 使用Scrapely实现自动化抓取 141
- 8.5 本章小结 142
- 第9章 总结 143
- 9.1 Google搜索引擎 143
- 9.2 Facebook 148
- 9.2.1 网站 148
- 9.2.2 API 150
- 9.3 Gap 151
- 9.4 宝马 153
- 9.5 本章小结 157