目录
第一篇 基础知识
第1章 Python环境搭建
1.1 Python的安装
1.1.1 Windows下Python的安装
1.1.2 Mac OS X下Python的安装
1.1.3 Linux下Python的安装
1.1.4 安装pip工具
1.2 虚拟环境Virtualenv
1.2.1 Virtualenv的安装
1.2.2 创建虚拟环境
1.2.3 激活虚拟环境
1.2.4 创建指定Python版本的虚拟环境
1.3 选择合适的编辑器
1.3.1 Vim
1.3.2 Atom
1.3.3 Sublime Text
1.3.4 Notepad++
1.3.5 Pycharm
第2章 常用爬虫库Requests
2.1 安装Requests
2.1.1 用pip安装
2.1.2 用github源码安装
2.1.3 用curl安装
2.2 了解 Requests的功能
2.2.1 使用GET和POST发送请求
2.2.2 通过URL传递参数
2.2.3 设置超时
2.2.4 查看返回内容
2.2.5 设置请求头
2.2.6 更多复杂的Post请求
2.2.7 返回对象状态码
2.2.8 设置代理IP
2.3 BeautifulSoup的安装和使用
2.3.1 使用pip安装BeautifulSoup
2.3.2 使用BeautifulSoup定位元素
2.4 初识自动化测试工具Selenium
2.4.1 Selenium安装
2.4.2 使用Selnium爬取网站
2.5 Selenium定位元素
2.5.1 通过属性定位
2.5.2 通过xpath定位
2.6 Selenium反爬设置
2.6.1 设置请求头
2.6.2 设置代理IP
第3章 常用爬虫框架Scrapy
3.1 认识Scrapy
3.1.1 Scrapy爬取quotes简单示例
3.1.2 安装所需依赖包
3.1.3 使用虚拟环境
3.2 Scrapy shell的使用
3.2.1 运行shell
3.2.2 使用Scrapy shell爬取Scrapy.org
3.2.3 爬虫调用shell
3.3 使用Scrapy爬取quotes
3.3.1 创建Scrapy项目并新建爬虫
3.3.2 爬取和提取数据
3.3.3 通过脚本运行Scrapy爬虫
3.3.4 在同一进程下运行多个爬虫
3.3.5 简易的分布式爬虫思路
3.3.6 防止爬虫被ban
3.4 setting基本配置
3.5 Pipeline模块
3.5.1 爬取文字板块
3.5.2 编写Pipeline模块
3.5.3 通过Pipeline将数据写入MongoDB数据库
3.5.4 ImagesPipeline处理图片
3.5.5 FilePipeline下载文件
3.6 Middleware中间件
3.6.1 Downloader Middleware
3.6.2 随机请求头中间件
3.6.3 更换代理IP中间件
3.6.4 通过Downloader Middleware使用Selenium
3.6.5 Spider Middleware
3.7 新功能拓展
3.7.1 信号signals
3.7.2 自定义拓展
第4章 数据存储——数据库的选择
4.1 MySQL数据库
4.1.1 MySQL的安装
4.1.2 几款可视化工具
4.1.3 数据库连接
4.1.4 数据库插入操作
4.1.5 数据库查询
4.1.6 数据库更新操作
4.1.7 爬取写入数据库
4.2 MongoDB数据库
4.2.1 MongoDB安装
4.2.2 连接数据库
4.2.3 查询数据库
4.2.4 插入和更新数据库
4.2.5 爬取数据并插入到MongoDB数据库中
4.3 Redis数据库
4.3.1 Redis安装
4.3.2 连接Redis数据库
4.3.3 Python操作Redis数据库
4.3.4 爬取并写入Redis做缓存
第5章 效率为王——分布式爬虫
5.1 什么是分布式爬虫
5.1.1 分布式爬虫的效率
5.1.2 实现分布式的方法
5.2 Celery
5.2.1 Celery入门
5.2.2 Celery分布式爬虫
5.3 使用Scrapy-redis的分布式爬虫
5.3.1 Scrapy-redis安装与入门
5.3.2 创建Scrapy-redis爬虫项目
第6章 抓包的使用与分析
6.1 利用抓包分析目标网站
6.1.1 如何抓包
6.1.2 网页抓包分析
6.2 手机APP抓包
6.2.1 使用fiddler抓包
6.2.2 HTTPS证书安装
6.2.3 booking手机端抓包
第7章 Websocket通信网站爬取
7.1 什么是Websocket
7.1.1 Websocket-clinet
7.1.2 Websocket-clinet简单入门
7.2 使用Websocket爬取财经网站
第8章 验证码破解
8.1 关于验证码
8.1.1 一般的验证码
8.1.2 极验验证
8.2 极验滑动验证破解
8.2.1 准备工具
8.2.2 分析滑动验证码
8.2.3 开始破解极限滑动验证码
8.3 图片验证码破解
8.3.1 准备工具
8.3.2 文字图像识别
8.3.3 识别验证码
第9章 多线程与多进程并发爬取
9.1 多线程
9.1.1 堵塞与非堵塞
9.1.2 继承threading.Thread创建类
9.1.3 多线程的锁
9.1.4 queue队列
9.1.5 线程池
9.2 多线程爬虫
9.2.1 爬虫框架
9.2.2 编写爬虫
9.2.3 以多线程方式启动
9.3 多进程
9.3.1 multiprocessing模块
9.3.2 通过Pool进程池创建进程
9.3.3 multiprocessing.Queue队列
9.3.4 multiprocessing.Pipe管道
9.3.5 multiprocessing.Lock锁
9.4 多进程爬虫
9.4.1 多进程爬取音频
9.4.2 多进程加多线程进行爬取
第10章 爬虫接口优化
10.1 Gunicorn的安装与使用
10.2 Gunicorn配置
10.2.1 配置参数
10.2.2 通过config文件启动
第11章 使用Docker部署爬虫
11.1 Docker
11.1.1 Docker的安装
11.1.2 Docker的镜像
11.1.3 构建自己的Docker镜像
11.1.4 容器使用
11.1.5 Dockerfile
11.2 爬虫部署
11.2.1 爬虫接口
11.2.2 部署爬虫接口
第二篇 实战案例
第12章 实战1:建立代理IP池
12.1 爬取免费代理IP
12.1.1 爬取代理IP
12.1.2 检验代理IP
12.2 建立代理IP池
12.2.1 检验代理IP
12.2.2 Redis消息队列
12.2.3 master爬虫
第13章 实战2:磁力链接搜索器
13.1 爬取磁力搜索平台
13.1.1 磁力平台
13.1.2 slave爬虫
13.2 实现磁力搜索器
13.2.1 展示与交互
13.2.2 数据查询
第14章 实战3:爬虫管家
14.1 QQ机器人
14.1.1 qqbot
14.1.2 基本操作
14.1.3 实现自己的机器人
14.2 爬虫监控机器人
第15章 实战4:数据可视化
15.1 可视化包Pyecharts
15.1.1 Pyecharts的安装
15.1.2 地图展示数据
15.2 爬取最低价机票数据
15.2.1 破解旅游网站价格日历接口
15.2.2 爬取旅游网站
15.2.3 将数据可视化
第16章 实战5:爬取贴吧中的邮箱
16.1 爬取网站
16.1.1 爬取高校名单
16.1.2 利用正则表达式匹配号码
16.2 分析贴吧搜索页面并提取号码
16.3 使用Scrapy开始编码
16.3.1 创建贴吧Scrapy项目
16.3.2 新建爬虫并编写爬虫逻辑
16.3.3 数据处理
第17章 实战6:批量爬取企业信息
17.1 从第三方平台获取企业名
17.2 如何爬取企业详细信息
第18章 实战7:爬取公众号历史文章
18.1 分析公众号接口
18.1.1 开始抓包
18.1.2 分析接口
18.1.3 尝试请求数据
18.2 爬取公众号
18.2.1 爬取思路
18.2.2 请求接口获取文章URL
18.2.3 解析文章网页源码
18.2.4 合并代码
第19章 实战8:高效爬取——异步爬虫
19.1 异步编程
19.1.1 asyncio库
19.1.2 aiohttp库
19.1.3 访问多个URL
19.2 爬取图片
19.2.1 为函数命名
19.2.2 对网页进行解析
19.2.3 异步爬取图片
第20章 实战9:爬取漫画网站
20.1 爬取单部漫画
20.1.1 单集漫画的爬取
20.1.2 全集漫画的爬取
20.2 爬取漫画全站
第21章 实战10:给kindle推送爬取的小说
21.1 用Python发送邮件
21.1.1 纯文本邮件的发送
21.1.2 带附件邮件的发送
21.2 爬取小说
21.2.1 制作word文档
21.2.2 爬取baka-tsuki.org
第22章 实战11:爬取游民星空壁纸
22.1 星空壁纸的爬取准备
22.2 爬取壁纸
22.2.1 获取图片和下一页地址
22.2.2 爬取列表页
22.2.3 爬取高清图片资源
第23章 综合实战:建立一个小网站
23.1 Flask框架
23.1.1 写一个简单的hello word网页
23.1.2 添加html模板
23.2 Bootstrap框架
23.2.1 使用Bootstrap框架
23.2.2 Bootstrap在线模板
23.2.3 添加壁纸板块
第24章 综合实战:爬取电影网站
24.1 理清爬虫的思路
24.2 分步编码实现爬取
24.2.1 爬取详情页
24.2.2 爬取列表页
24.2.3 爬取首页
24.2.4 写入数据库
第25章 综合实战:建立电影小站
25.1 搭建项目
25.1.1 sqlite数据库
25.1.2 创建项目
25.1.3 通过蓝图建立电影板块
25.2 建立模板
25.2.1 flask-bootstrap
25.2.2 电影页面
25.2.3 电影分类
25.2.4 电影详情页
25.2.5 电影搜索页
第26章 综合实战:磁力搜索
26.1 磁力搜索
26.1.1 如何高效爬取
26.1.2 建立Celery任务
26.2 Web部分
26.2.1 建立模型
26.2.2 视图函数
26.2.3 关于产品
附:
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...