图书简介

本书站在初学者的角度,从原理到实践,循序渐进地讲述了使用Python开发网络爬虫的核心技术。全书从逻辑上可分为基础篇、实战篇和爬虫框架篇三部分。基础篇主要介绍了编写网络爬虫所需的基础知识,分别是网站分析、数据抓取、数据清洗和数据入库。网站分析讲述如何使用Chrome和Fiddler抓包工具对网络做全面分析;数据抓取介绍了Python爬虫模块Urllib和Requests的基础知识;数据清洗主要介绍字符串操作、正则和Beautiful Soup的使用;数据入库分别讲述了MySQL和MongoDB的操作,通过ORM框架SQLAlchemy实现数据持久化,实现企业级开发。实战篇深入讲解了分布式爬虫、爬虫软件开发与应用、12306抢票程序和微博爬取,所举示例均来自于开发实践,可帮助读者快速提升技能,开发实际项目。框架篇主要讲述Scrapy的基础知识,并通过爬取QQ音乐为实例,让读者深层次了解Scrapy的使用。
本书内容丰富,注重实战,适用于从零开始学习网络爬虫的初学者,或者是已经有一些网络爬虫编写经验,但希望更加全面、深入理解Python爬虫的开发人员。

(展开)

编辑推荐

本书站在初学者的角度,从原理到实践,深入、系统地阐述了使用Python 3开发网络爬虫的核心技术,全书从逻辑上可分为基础篇、实战篇和爬虫框架篇三部分。

基础篇
主要介绍了编写网络爬虫所需的基础知识,包括网站分析、数据抓取、数据清洗和数据入库。
网站分析讲述如何使用Chrome和Fiddler抓包工具对网站做全面分析。
数据抓取介绍了Python爬虫模块Urllib和Requests的基础知识。
数据清洗主要介绍字符串操作、正则表达式和Beautiful Soup的使用。
数据入库分别讲述了MySQL和MongoDB的操作,通过ORM框架SQLAlchemy实现数据持久化,实现企业级开发。

实战篇
深入讲解了分布式爬虫、爬虫软件的开发与应用、12306抢票程序和微博爬取,所举实例均来自于编者的开发实践,可帮助读者快速提升技能,开发自己的实际项目。

爬虫框架篇
主要讲述Scrapy的原理和特性,通过爬取QQ音乐实例,介绍Scrapy在网络爬虫中的应用技巧。本部分内容可使读者深入地了解Scrapy的使用,并举一反三,编写出复杂的网络爬虫程序。

本书既介绍编写网络爬虫的各种技术,又注重以网络爬虫和网站分析的思想为出发点,培养读者编写网络爬虫的逻辑思维,使读者能够针对不同的网站制定出不同的爬虫方案;此外,还介绍了反爬虫机制和相应的解决方案,是读者入职爬虫工程师的很好实践。

本书所有程序代码均在Python 3.5环境下测试通过,读者可从网络上下载本书所有实例源代码。

(展开)

目录

目 录
第1章?理解网络爬虫 1
1.1 爬虫的定义 1
1.2 爬虫的类型 2
1.3 爬虫的原理 3
1.4 爬虫的搜索策略 5
1.5 反爬虫技术及解决方案 6
1.6 本章小结 8
第2章?爬虫开发基础 9
2.1 HTTP与HTTPS 9
2.2 请求头 11
2.3 Cookies 13
2.4 HTML 14
2.5 JavaScript 16
2.6 JSON 18
2.7 Ajax 19
2.8 本章小结 20
第3章?Chrome分析网站 21
3.1 Chrome开发工具 21
3.2 Elements标签 22
3.3 Network标签 23
3.4 分析QQ音乐 27
3.5 本章小结 29
第4章?Fiddler抓包工具 30
4.1 Fiddler介绍 30
4.2 Fiddler安装配置 31
4.3 Fiddler抓取手机应用 33
4.4 Toolbar工具栏 36
4.5 Web Session列表 37
4.6 View选项视图 40
4.7 Quickexec命令行 41
4.8 本章小结 42
第5章?Urllib数据抓取 43
5.1 Urllib简介 43
5.2 发送请求 44
5.3 复杂的请求 46
5.4 代理IP 47
5.5 使用Cookies 48
5.6 证书验证 50
5.7 数据处理 51
5.8 本章小结 52
第6章?Requests数据抓取 54
6.1 Requests简介及安装 54
6.2 请求方式 55
6.3 复杂的请求方式 57
6.4 下载与上传 60
6.5 本章小结 63
第7章?验证码识别 64
7.1 验证码类型 64
7.2 OCR技术 66
7.3 第三方平台 69
7.4 本章小结 72
第8章?数据清洗 74
8.1 字符串操作 74
8.2 正则表达式 78
8.3 Beautiful Soup介绍及安装 84
8.4 Beautiful Soup的使用 86
8.5 本章小结 90
第9章?文档数据存储 92
9.1 CSV数据写入和读取 92
9.2 Excel数据写入和读取 94
9.3 Word数据写入和读取 99
9.4 本章小结 101
第10章?ORM框架 104
10.1 SQLAlchemy介绍 104
10.2 安装SQLAlchemy 105
10.3 连接数据库 106
10.4 创建数据表 108
10.5 添加数据 111
10.6 更新数据 112
10.7 查询数据 114
10.8 本章小结 116
第11章?MongoDB数据库操作 118
11.1 MongoDB介绍 118
11.2 安装及使用 120
11.2.1 MongoDB 120
11.2.2 MongoDB可视化工具 121
11.2.3 PyMongo 123
11.3 连接数据库 123
11.4 添加文档 125
11.5 更新文档 126
11.6 查询文档 127
11.7 本章小结 130
第12章?项目实战:爬取淘宝商品信息 131
12.1 分析说明 131
12.2 功能实现 134
12.3 数据存储 136
12.4 本章小结 138
第13章?项目实战:分布式爬虫——QQ音乐 139
13.1 分析说明 139
13.2 歌曲下载 140
13.3 歌手和歌曲信息 145
13.4 分类歌手列表 148
13.5 全站歌手列表 150
13.6 数据存储 152
13.7 分布式概念 154
13.7.1 GIL是什么 154
13.7.2 为什么会有GIL 154
13.8 并发库concurrent.futures 155
13.9 分布式爬虫 157
13.10 本章小结 159
第14章?项目实战:爬虫软件—— 淘宝商品信息 161
14.1 分析说明 161
14.2 GUI库介绍 162
14.3 PyQt5安装及环境搭建 162
14.4 软件界面开发 165
14.5 MVC——视图 169
14.6 MVC——控制器 171
14.7 MVC——模型 172
14.8 扩展思路 173
14.9 本章小结 174
第15章?项目实战:12306抢票 176
15.1 分析说明 176
15.2 验证码验证 177
15.3 用户登录与验证 181
15.4 查询车次 187
15.5 预订车票 193
15.6 提交订单 196
15.7 生成订单 204
15.8 本章小结 209
第16章?项目实战:玩转微博 219
16.1 分析说明 219
16.2 用户登录 220
16.3 用户登录(带验证码) 232
16.4 关键字搜索热门微博 240
16.5 发布微博 247
16.6 关注用户 253
16.7 点赞和转发评论 257
16.8 本章小结 263
第17章?Scrapy爬虫框架 265
17.1 爬虫框架 265
17.2 Scrapy的运行机制 267
17.3 安装Scrapy 268
17.4 爬虫开发快速入门 270
17.5 Spiders介绍 277
17.6 Spider的编写 278
17.7 Items的编写 282
17.8 Item Pipeline的编写 284
17.9 Selectors的编写 288
17.10 文件下载 291
17.11 本章小结 296
第18章?项目实战:Scrapy爬取QQ音乐 298
18.1 分析说明 298
18.2 创建项目 299
18.3 编写setting 300
18.4 编写Items 301
18.5 编写Item Pipelines 302
18.6 编写Spider 305
18.7 本章小结 310
(展开)

书页展示

更多图书信息

作者:黄永祥, 著
出版:清华大学出版社

ISBN:9787302503286

出版日期:2018-08-01

清华大学出版社

清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。作为来自一流大学的出版单位,清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。目前,清华版教材已在全国一百多所院校得到广泛使用。高品质、多层次的计算机图书是清华大学出版社的一大品牌支柱。20世纪80年代末,在席卷全球的信息化浪潮中,清华大学出版社快速切入计算机图书市场,逐渐成为并一直保持这一市场的领先地位,为发展中国计算机教育做出了巨大贡献。

(展开)

作者信息

黄永祥, 著

黄永祥,信息管理与信息系统专业学士,曾从事过系统开发和自动化开发,精通B/S和C/S自动化测试技术,多年网络爬虫开发经验,对反爬虫机制有独到的见解,精通Flask、Django等Web框架并有丰富的网站开发经验。曾就职于广州易点科技有限公司,担任Python开发工程师,目前就职于广东数据集成有限公司。热爱分享和新技术的探索,在CSDN上发表多篇Python技术文章。

(展开)
Copyright ©2019  文泉书局  |  京ICP证151049号   |  关于我们   |  联系我们   |  版权声明