第一部分 网络爬取基础 2
第1章 简介 2
1.1什么是网络爬取 2
1.1.1网络爬取为什么用于数据科学 2
1.1.2谁在使用网络爬取 4
1.2准备工作 6
1.2.1设置 6
1.2.2 Python快速入门 7
第2章 网络传输协议HTTP 18
2.1网络的魔力 18
2.2超文本传输协议 20
2.3 Python中的HTTP——Requests库 25
2.4带参数的URL查询字符串 28
第3章 HTML和CSS 36
3.1超文本标记语言HTML 36
3.2将浏览器用作开发工具 38
3.3层叠样式表CSS 42
3.4 Beautiful Soup库 45
3.5有关Beautiful Soup的更多内容 53
第二部分 高级网络爬取 60
第4章 深入挖掘HTTP 60
4.1使用表单和POST请求 60
4.2其他HTTP请求方法 71
4.3关于头的更多信息 73
4.4使用Cookie 79
4.5 requests库的session对象 87
4.6二进制、JSON和其他形式的内容 89
第5章 处理JavaScript 93
5.1什么是JavaScript 93
5.2爬取JavaScript 94
5.3使用Selenium爬取网页 98
5.4 Selenium的更多信息 109
第6章 从网络爬取到网络爬虫 115
6.1什么是网络爬虫 115
6.2使用Python实现网络爬虫 117
6.3数据库存储 120
第三部分 相关管理问题及最佳实践 130
第7章 网络爬取涉及的管理和法律问题 130
7.1数据科学过程 130
7.2网络爬取适合用于哪里 133
7.3法律问题 134
第8章 结语 139
8.1其他工具 139
8.1.1其他Python库 139
8.1.2 Scrapy库 140
8.1.3缓存 140
8.1.4代理服务器 141
8.1.5基于其他编程语言的爬取 141
8.1.6命令行工具 142
8.1.7图形化的爬取工具 142
8.2最佳实践和技巧 143
第9章 示例 147
9.1爬取Hacker News网页 148
9.2使用Hacker News API 150
9.3爬取引用J信息 150
9.4爬取书籍信息 154
9.5爬取GitHub上项目被收藏的次数 156
9.6爬取抵押贷款利率 160
9.7爬取和可视化IMDB评级 165
9.8爬取IATA航空公司信息 166
9.9爬取和分析网络论坛的互动 171
9.10收集和聚类时尚数据集 177
9.11 Amazon评论的情感分析 180
9.12爬取和分析维基百科关联图 188
9.13爬取和可视化董事会成员图 194
9.14使用深度学习破解验证码图片 197