资 源 简 介
《Python爬虫开发与项目实战》 目录如下前言基础篇第1章 回顾Python编程 21.1 安装Python 21.1.1 Windows上安装Python 21.1.2 Ubuntu上的Python 31.2 搭建开发环境 41.2.1 Eclipse PyDev 41.2.2 PyCharm 101.3 IO编程 111.3.1 文件读写 111.3.2 操作文件和目录 141.3.3 序列化操作 151.4 进程和线程 161.4.1 多进程 161.4.2 多线程 221.4.3 协程 251.4.4 分布式进程 271.5 网络编程 321.5.1 TCP编程 331.5.2 UDP编程 351.6 小结 36第2章 Web前端基础 372.1 W3C标准 372.1.1 HTML 372.1.2 CSS 472.1.3 JavaScript 512.1.4 XPath 562.1.5 JSON 612.2 HTTP标准 612.2.1 HTTP请求过程 622.2.2 HTTP状态码含义 622.2.3 HTTP头部信息 632.2.4 Cookie状态管理 662.2.5 HTTP请求方式 662.3 小结 68第3章 初识网络爬虫 693.1 网络爬虫概述 693.1.1 网络爬虫及其应用 693.1.2 网络爬虫结构 713.2 HTTP请求的Python实现 723.2.1 urllib2/urllib实现 723.2.2 httplib/urllib实现 763.2.3 更人性化的Requests 773.3 小结 82第4章 HTML解析大法 834.1 初识Firebug 834.1.1 安装Firebug 844.1.2 强大的功能 844.2 正则表达式 954.2.1 基本语法与使用 964.2.2 Python与正则 1024.3 强大的BeautifulSoup 1084.3.1 安装BeautifulSoup 1084.3.2 BeautifulSoup的使用 1094.3.3 lxml的XPath解析 1244.4 小结 126第5章 数据存储(无数据库版) 1275.1 HTML正文抽取 1275.1.1 存储为JSON 1275.1.2 存储为CSV 1325.2 多媒体文件抽取 1365.3 Email提醒 1375.4 小结 138第6章 实战项目:基础爬虫 1396.1 基础爬虫架构及运行流程 1406.2 URL管理器 1416.3 HTML下载器 1426.4 HTML解析器 1436.5 数据存储器 1456.6 爬虫调度器 1466.7 小结 147第7章 实战项目:简单分布式爬虫 1487.1 简单分布式爬虫结构 1487.2 控制节点 1497.2.1 URL管理器 1497.2.2 数据存储器 1517.2.3 控制调度器 1537.3 爬虫节点 1557.3.1 HTML下载器 1557.3.2 HTML解析器 1567.3.3 爬虫调度器 1577.4 小结 159中级篇第8章 数据存储(数据库版) 1628.1 SQLite 1628.1.1 安装SQLite 1628.1.2 SQL语法 1638.1.3 SQLite增删改查 1688.1.4 SQLite事务 1708.1.5 Python操作SQLite 1718.2 MySQL 1748.2.1 安装MySQL 1748.2.2 MySQL基础 1778.2.3 Python操作MySQL 1818.3 更适合爬虫的MongoDB 1838.3.1 安装MongoDB 1848.3.2 MongoDB基础 1878.3.3 Python操作MongoDB 1948.4 小结 196第9章 动态网站抓取 1979.1 Ajax和动态HTML 1979.2 动态爬虫1:爬取影评信息 1989.3 PhantomJS 2079.3.1 安装PhantomJS 2079.3.2 快速入门 2089.3.3 屏幕捕获 2119.3.4 网络监控 2139.3.5 页面自动化 2149.3.6 常用模块和方法 2159.4 Selenium 2189.4.1 安装Selenium 2199.4.2 快速入门 2209.4.3 元素选取 2219.4.4 页面操作 2229.4.5 等待 2259.5 动态爬虫2:爬取去哪网 2279.6 小结 230第10章 Web端协议分析 23110.1 网页登录POST分析 23110.1.1 隐藏表单分析 23110.1.2 加密数据分析 23410.2 验证码问题 24610.2.1 IP代理 24610.2.2 Cookie登录 24910.2.3 传统验证码识别 25010.2.4 人工打码 25110.2.5 滑动验证码 25210.3 www]m]wap 25210.4 小结 254第11章 终端协议分析 25511.1 PC客户端抓包分析 25511.1.1 HTTP Analyzer简介 25511.1.2 虾米音乐PC端API实战分析 25711.2 App抓包分析 25911.2.1 Wireshark简介 25911.2.2 酷我听书App端API实战分析 26611.3 API爬虫:爬取mp3资源信息 26811.4 小结 272第12章 初窥Scrapy爬虫框架 27312.1 Scrapy爬虫架构 27312.2 安装Scrapy 27512.3 创建cnblogs项目 27612.4 创建爬虫模块 27712.5 选择器 27812.5.1 Selector的用法 27812.5.2 HTML解析实现 28012.6 命令行工具 28212.7 定义Item 28412.8 翻页功能 28612.9 构建Item Pipeline 28712.9.1 定制Item Pipeline 28712.9.2 激活Item Pipeline 28812.10 内置数据存储 28812.11 内置图片和文件下载方式 28912.12 启动爬虫 29412.13 强化爬虫 29712.13.1 调试方法 29712.13.2 异常 29912.13.3 控制运行状态 30012.14 小结 301第13章 深入Scrapy爬虫框架 30213.1 再看Spider 30213.2 Item Loader 30813.2.1 Item与Item Loader 30813.2.2 输入与输出处理器 30913.2.3 Item Loader Context 31013.2.4 重用和扩展Item Loader 31113.2.5 内置的处理器 31213.3 再看Item Pipeline 31413.4 请求与响应 31513.4.1 Request对象 31513.4.2 Response对象 31813.5 下载器中间件 32013.5.1 激活下载器中间件 32013.5.2 编写下载器中间件 32113.6 Spider中间件 32413.6.1 激活Spider中间件 32413.6.2 编写Spider中间件 32513.7 扩展 32713.7.1 配置扩展 32713.7.2 定制扩展 32813.7.3 内置扩展 33213.8 突破反爬虫 33213.8.1 UserAgent池 33313.8.2 禁用Cookies 33313.8.3 设置下载延时与自动限速 33313.8.4 代理IP池 33413.8.5 Tor代理 33413.8.6 分布式下载器:Crawlera 33713.8.7 Google cache 33813.9 小结 339第14章 实战项目:Scrapy爬虫 34014.1 创建知乎爬虫 34014.2 定义Item 34214.3 创建爬虫模块 34314.3.1 登录知乎 34314.3.2 解析功能 34514.4 Pipeline 35114.5 优化措施 35214.6 部署爬虫 35314.6.1 Scrapyd 35414.6.2 Scrapyd-client 35614.7 小结 357深入篇第15章 增量式爬虫 36015.1 去重方案 36015.2 BloomFilter算法 36115.2.1 BloomFilter原理 36115.2.2 Python实现BloomFilter 36315.3 Scrapy和BloomFilter 36415.4 小结 366第16章 分布式爬虫与Scrapy 36716.1 Redis基础 36716.1.1 Redis简介 36716.1.2 Redis的安装和配置 36816.1.3 Redis数据类型与操作 37216.2 Python和Redis 37516.2.1 Python操作Redis 37516.2.2 Scrapy集成Redis 38416.3 MongoDB集群 38516.4 小结 390第17章 实战项目:Scrapy分布式爬虫 39117.1 创建云起书院爬虫 39117.2 定义Item 39317.3 编写爬虫模块 39417.4 Pipeline 39517.5 应对反爬虫机制 39717.6 去重优化 40017.7 小结 401第18章 人性化PySpider爬虫框架 40318.1 PySpider与Scrapy 40318.2 安装PySpider 40418.3 创建豆瓣爬虫 40518.4 选择器 40918.4.1 PyQuery的用法 40918.4.2 解析数据 41118.5 Ajax和HTTP请求 41518.5.1 Ajax爬取 41518.5.2 HTTP请求实现 41718.6 PySpider和PhantomJS 41718.6.1 使用PhantomJS 41818.6.2 运行JavaScript 42018.7 数据存储 42018.8 PySpider爬虫架构 42218.9 小结 423