这书从Python 3.6.4的安裝刚开始,详尽解读了Python从简易程序流程拓宽到Python爬虫技术的过程。这书从实战演练来看,依据不一样的要求选择不一样的网络爬虫,有目的性地解读了几类Python爬虫技术。 这书共10章,包含的內容有Python3.6語言的基础英语的语法、Python常见IDE的应用、Python第三方平台控制模块的导进应用、Python网络爬虫常见控制模块、Scrapy网络爬虫、Beautiful Soup网络爬虫、Mechanize仿真模拟电脑浏览器和Selenium仿真模拟电脑浏览器、Pyspider网络爬虫架构、网络爬虫与反网络爬虫。这书全部源码已发送百度云盘供读者下载。 这书主题鲜明,案例典型性,应用性强。合适Python爬虫技术新手、Python数据统计分析与发掘技术性新手,及其高等学校和培训机构有关技术专业的老师学生阅读文章。
目录
- 第1章 Python环境配置 1
- 1.1 Python简介 1
- 1.1.1 Python的历史由来 1
- 1.1.2 Python的现状 2
- 1.1.3 Python的应用 2
- 1.2 Python 3.6.4开发环境配置 4
- 1.2.1 Windows下安装Python 4
- 1.2.2 Windows下安装配置pip 9
- 1.2.3 Linux下安装Python 10
- 1.2.4 Linux下安装配置pip 13
- 1.2.5 永远的hello world 16
- 1.3 本章小结 21
- 第2章 Python基础 22
- 2.1 Python变量类型 22
- 2.1.1 数字 22
- 2.1.2 字符串 25
- 2.1.3 列表 29
- 2.1.4 元组 34
- 2.1.5 字典 37
- 2.2 Python语句 41
- 2.2.1 条件语句——if else 41
- 2.2.2 有限循环——for 42
- 2.2.3 无限循环——while 44
- 2.2.4 中断循环——continue、break 46
- 2.2.5 异常处理——try except 48
- 2.2.6 导入模块——import 52
- 2.3 函数和类 56
- 2.3.1 函数 56
- 2.3.2 类 62
- 2.4 Python内置函数 68
- 2.4.1 常用内置函数 68
- 2.4.2 高级内置函数 69
- 2.5 Python代码格式 74
- 2.5.1 Python代码缩进 74
- 2.5.2 Python命名规则 75
- 2.5.3 Python代码注释 76
- 2.6 Python调试 79
- 2.6.1 Windows下IDLE调试 79
- 2.6.2 Linux下pdb调试 82
- 2.7 本章小结 87
- 第3章 简单的Python脚本 88
- 3.1 九九乘法表 88
- 3.1.1 Project分析 88
- 3.1.2 Project实施 88
- 3.2 斐波那契数列 90
- 3.2.1 Project分析 90
- 3.2.2 Project实施 90
- 3.3 概率计算 91
- 3.3.1 Project分析 91
- 3.3.2 Project实施 92
- 3.4 读写文件 93
- 3.4.1 Project分析 93
- 3.4.2 Project实施 94
- 3.5 类的继承与重载 96
- 3.5.1 Project 1分析 96
- 3.5.2 Project 1实施 98
- 3.5.3 Project 2分析 100
- 3.5.4 Project 2实施 101
- 3.6 多线程 107
- 3.6.1 Project 1分析 107
- 3.6.2 Project 1实施 109
- 3.6.3 Project 2分析 112
- 3.6.4 Project 2实施 115
- 3.7 本章小结 117
- 第4章 Python爬虫常用模块 118
- 4.1 网络爬虫技术核心 118
- 4.1.1 网络爬虫实现原理 118
- 4.1.2 爬行策略 119
- 4.1.3 身份识别 119
- 4.2 Python 3标准库之urllib.request模块 120
- 4.2.1 urllib.request请求返回网页 120
- 4.2.2 urllib.request使用代理访问网页 122
- 4.2.3 urllib.request修改header 125
- 4.3 Python 3标准库之logging模块 129
- 4.3.1 简述logging模块 129
- 4.3.2 自定义模块myLog 133
- 4.4 re模块(正则表达式) 135
- 4.4.1 re模块(正则表达式操作) 136
- 4.4.2 re模块实战 137
- 4.5 其他有用模块 139
- 4.5.1 sys模块(系统参数获取) 139
- 4.5.2 time模块(获取时间信息) 141
- 4.6 本章小结 144
- 第5章 Scrapy爬虫框架 145
- 5.1 安装Scrapy 145
- 5.1.1 Windows下安装Scrapy环境 145
- 5.1.2 Linux下安装Scrapy 146
- 5.1.3 vim编辑器 147
- 5.2 Scrapy选择器XPath和CSS 148
- 5.2.1 XPath选择器 148
- 5.2.2 CSS选择器 151
- 5.2.3 其他选择器 152
- 5.3 Scrapy爬虫实战一:今日影视 153
- 5.3.1 创建Scrapy项目 153
- 5.3.2 Scrapy文件介绍 155
- 5.3.3 Scrapy爬虫编写 157
- 5.4 Scrapy爬虫实战二:天气预报 164
- 5.4.1 项目准备 165
- 5.4.2 创建编辑Scrapy爬虫 166
- 5.4.3 数据存储到json 173
- 5.4.4 数据存储到MySQL 175
- 5.5 Scrapy爬虫实战三:获取代理 182
- 5.5.1 项目准备 182
- 5.5.2 创建编辑Scrapy爬虫 183
- 5.5.3 多个Spider 188
- 5.5.4 处理Spider数据 192
- 5.6 Scrapy爬虫实战四:糗事百科 194
- 5.6.1 目标分析 195
- 5.6.2 创建编辑Scrapy爬虫 195
- 5.6.3 Scrapy项目中间件——添加headers 196
- 5.6.4 Scrapy项目中间件——添加proxy 200
- 5.7 Scrapy爬虫实战五:爬虫攻防 202
- 5.7.1 创建一般爬虫 202
- 5.7.2 封锁间隔时间破解 206
- 5.7.3 封锁Cookies破解 206
- 5.7.4 封锁User-Agent破解 207
- 5.7.5 封锁IP破解 212
- 5.8 本章小结 215
- 第6章 Beautiful Soup爬虫 216
- 6.1 安装Beautiful Soup环境 216
- 6.1.1 Windows下安装Beautiful Soup 216
- 6.1.2 Linux下安装Beautiful Soup 217
- 6.1.3 最强大的IDE——Eclipse 218
- 6.2 Beautiful Soup解析器 227
- 6.2.1 bs4解析器选择 227
- 6.2.2 lxml解析器安装 227
- 6.2.3 使用bs4过滤器 229
- 6.3 bs4爬虫实战一:获取百度贴吧内容 234
- 6.3.1 目标分析 234
- 6.3.2 项目实施 236
- 6.3.3 代码分析 243
- 6.3.4 Eclipse调试 244
- 6.4 bs4爬虫实战二:获取双色球中奖信息 245
- 6.4.1 目标分析 246
- 6.4.2 项目实施 248
- 6.4.3 保存结果到Excel 251
- 6.4.4 代码分析 256
- 6.5 bs4爬虫实战三:获取起点小说信息 257
- 6.5.1 目标分析 257
- 6.5.2 项目实施 259
- 6.5.3 保存结果到MySQL 261
- 6.5.4 代码分析 265
- 6.6 bs4爬虫实战四:获取电影信息 266
- 6.6.1 目标分析 266
- 6.6.2 项目实施 267
- 6.6.3 bs4反爬虫 270
- 6.6.4 代码分析 273
- 6.7 bs4爬虫实战五:获取音悦台榜单 273
- 6.7.1 目标分析 273
- 6.7.2 项目实施 274
- 6.7.3 代码分析 279
- 6.8 本章小结 280
- 第7章 Mechanize模拟浏览器 281
- 7.1 安装Mechanize模块 281
- 7.1.1 Windows下安装Mechanize 281
- 7.1.2 Linux下安装Mechanize 282
- 7.2 Mechanize 测试 283
- 7.2.1 Mechanize百度 283
- 7.2.2 Mechanize光猫F460 286
- 7.3 Mechanize实站一:获取Modem信息 290
- 7.3.1 获取F460数据 290
- 7.3.2 代码分析 293
- 7.4 Mechanize实战二:获取音悦台公告 293
- 7.4.1 登录原理 293
- 7.4.2 获取Cookie的方法 294
- 7.4.3 获取Cookie 298
- 7.4.4 使用Cookie登录获取数据 302
- 7.5 本章小结 305
- 第8章 Selenium模拟浏览器 306
- 8.1 安装Selenium模块 306
- 8.1.1 Windows下安装Selenium模块 306
- 8.1.2 Linux下安装Selenium模块 307
- 8.2 浏览器选择 307
- 8.2.1 Webdriver支持列表 307
- 8.2.2 Windows下安装PhantomJS 308
- 8.2.3 Linux下安装PhantomJS 310
- 8.3 Selenium&PhantomJS抓取数据 312
- 8.3.1 获取百度搜索结果 312
- 8.3.2 获取搜索结果 314
- 8.3.3 获取有效数据位置 317
- 8.3.4 从位置中获取有效数据 319
- 8.4 Selenium&PhantomJS实战一:获取代理 319
- 8.4.1 准备环境 320
- 8.4.2 爬虫代码 321
- 8.4.3 代码解释 324
- 8.5 Selenium&PhantomJS实战二:漫画爬虫 324
- 8.5.1 准备环境 325
- 8.5.2 爬虫代码 326
- 8.5.3 代码解释 329
- 8.6 本章小结 329
- 第9章 Pyspider爬虫框架 330
- 9.1 安装Pyspider 330
- 9.1.1 Windows下安装Pyspider 330
- 9.1.2 Linux下安装Pyspider 331
- 9.1.3 选择器pyquery测试 333
- 9.2 Pyspider实战一:Youku影视排行 335
- 9.2.1 创建项目 336
- 9.2.2 爬虫编写 338
- 9.3 Pyspider实战二:电影下载 346
- 9.3.1 项目分析 346
- 9.3.2 爬虫编写 349
- 9.3.3 爬虫运行、调试 355
- 9.3.4 删除项目 360
- 9.4 Pyspider实战三:音悦台MusicTop 363
- 9.4.1 项目分析 363
- 9.4.2 爬虫编写 364
- 9.5 本章小结 369
- 第10章 爬虫与反爬虫 370
- 10.1 防止爬虫IP被禁 370
- 10.1.1 反爬虫在行动 370
- 10.1.2 爬虫的应对 373
- 10.2 在爬虫中使用Cookies 377
- 10.2.1 通过Cookies反爬虫 377
- 10.2.2 带Cookies的爬虫 378
- 10.2.3 动态加载反爬虫 381
- 10.2.4 使用浏览器获取数据 381
- 10.3 本章小结 381