内容简介
第1章 Python与网络爬虫
1.1 Python语言
1.1.1 什么是Python
1.1.2 Python的应用现状
1.2 Python的安装与开发环境配置
1.2.1 在Windows上安装
1.2.2 在Ubuntu和Mac OS上安装
1.2.3 PyCharm的使用
1.2.4 Jupyter Notebook
1.3 Python基本语法
1.3.1 HelloWorld与数据类型
1.3.2 逻辑语句
1.3.3 Python中的函数与类
1.3.4 Python从0到1
1.4 互联网、HTTP与HTML
1.4.1 互联网与HTTP
1.4.2 HTML
1.5 Hello,Spider!
1.5.1 第一个爬虫程序
1.5.2 对爬虫的思考
1.6 调研网站
1.6.1 网站的robots.txt与Sitemap
1.6.2 查看网站所用技术
1.6.3 查看网站所有者信息
1.6.4 使用开发者工具检查网页
1.7 本章小结
第2章 数据采集
2.1 从抓取开始
2.2 正则表达式
2.2.1 初见正则表达式
2.2.2 正则表达式的简单使用
2.3 BeautifulSoup
2.3.1 安装与上手
2.3.2 BeautifulSoup的基本使用
2.4 XPath与lxml
2.4.1 XPath
2.4.2 lxml与XPath的使用
2.5 遍历页面
2.5.1 抓取下一个页面
2.5.2 完成爬虫
2.6 使用API
2.6.1 API简介
2.6.2 API使用示例
2.7 本章小结
第3章 文件与数据存储
3.1 Python中的文件
3.1.1 基本的文件读写
3.1.2 序列化
3.2 字符串
3.3 Python与图片
3.3.1 PIL与Pillow
3.3.2 Python与OpenCV简介
3.4 CSV文件
3.4.1 CSV简介
3.4.2 CSV的读写
3.5 使用数据库
3.5.1 使用MySQL
3.5.2 使用SQLite3
3.5.3 使用SQLAlchemy
3.5.4 使用Redis
3.6 其他类型的文档
3.7 本章小结
第4章 JavaScript与动态内容
4.1 JavaScript与AJAX技术
4.1.1 JavaScript语言
4.1.2 AJAX
4.2 抓取AJAX数据
4.2.1 分析数据
4.2.2 数据提取
4.3 抓取动态内容
4.3.1 动态渲染页面
4.3.2 使用Selenium
4.3.3 PyV8与Splash
4.4 本章小结
第5章 表单与模拟登录
5.1 表单
5.1.1 表单与POST
5.1.2 POST发送表单数据
5.2 Cookie
5.2.1 什么是Cookie
5.2.2 在Python中使用Cookie
5.3 模拟登录网站
5.3.1 分析网站
5.3.2 通过Cookie模拟登录
5.4 验证码
5.4.1 图片验证码
5.4.2 滑动验证
5.5 本章小结
第6章 数据的进一步处理
6.1 Python与文本分析
6.1.1 什么是文本分析
6.1.2 jieba与SnowNLP
6.1.3 NLTK
6.1.4 文本分类与聚类
6.2 数据处理与科学计算
6.2.1 从MATLAB到Python
6.2.2 NumPy
6.2.3 Pandas
6.2.4 Matplotlib
6.2.5 SciPy与SymPy
6.3 本章小结
第7章 更灵活的爬虫
7.1 更灵活的爬虫——以微信数据抓取为例
7.1.1 用Selenium抓取Web微信信息
7.1.2 基于Python的微信API工具
7.2 更多样的爬虫
7.2.1 在BeautifulSoup和XPath之外
7.2.2 在线爬虫应用平台
7.2.3 使用urllib
7.3 爬虫的部署和管理
7.3.1 配置远程主机
7.3.2 编写本地爬虫
7.3.3 部署爬虫
7.3.4 查看运行结果
7.3.5 使用爬虫管理框架
7.4 本章小结
第8章 浏览器模拟与网站测试
8.1 关于测试
8.1.1 什么是测试
8.1.2 什么是TDD
8.2 Python的单元测试
8.2.1 使用unittest
8.2.2 其他方法
8.3 使用Python爬虫测试网站
8.4 使用Selenium测试
8.4.1 Selenium测试常用的网站交互
8.4.2 结合Selenium进行单元测试
8.5 本章小结
第9章 更强大的爬虫
9.1 爬虫框架
9.1.1 Scrapy是什么
9.1.2 Scrapy安装与入门
9.1.3 编写Scrapy爬虫
9.1.4 其他爬虫框架
9.2 网站反爬虫
9.2.1 反爬虫的策略
9.2.2 伪装headers
9.2.3 使用代理
9.2.4 访问频率
9.3 多进程与分布式
9.3.1 多进程编程与爬虫抓取
9.3.2 分布式爬虫
9.4 本章小结
第10章 爬虫实践:火车票余票实时提醒
10.1 程序设计
10.1.1 分析网页
10.1.2 理解返回的JSON格式数据的意义
10.1.3 微信消息推送
10.1.4 运行并查看微信消息
10.2 本章小结
第11章 爬虫实践:爬取二手房数据并绘制热力图
11.1 数据抓取
11.1.1 分析网页
11.1.2 地址转换成经纬度
11.1.3 编写代码
11.1.4 数据下载结果
11.2 绘制热力图
11.3 本章小结
第12章 爬虫实践:免费IP代理爬虫
12.1 程序设计
12.1.1 代理分类
12.1.2 网站分析
12.1.3 编写爬虫
12.1.4 运行并查看结果
12.2 本章小结
第13章 爬虫实践:百度文库爬虫
13.1 程序设计
13.1.1 分析网页
13.1.2 编写爬虫
13.1.3 运行并查看爬取的百度文库文件
13.2 本章小结
第14章 爬虫实践:拼多多用户评论数据爬虫
14.1 程序设计
14.1.1 分析网页
14.1.2 编写爬虫
14.1.3 运行并查看数据库
14.2 本章小结
第15章 爬虫实践:Selenium+PyQuery+MongoDB爬取网易跟帖
15.1 程序设计
15.1.1 Selenium介绍
15.1.2 分析网页
15.1.3 编写爬虫
15.1.4 运行并查看MongoDB文件
15.2 本章小结