封面图
目录
- 前言
- 第1章Python零基础语法入门 1
- 1.1Python与PyCharm安装 1
- 1.1.1Python安装(Windows、Mac和Linux) 1
- 1.1.2PyCharm安装 3
- 1.2变量和字符串 3
- 1.2.1变量 4
- 1.2.2字符串的“加法”和“乘法” 4
- 1.2.3字符串的切片和索引 5
- 1.2.4字符串方法 5
- 1.3函数与控制语句 7
- 1.3.1函数 7
- 1.3.2判断语句 8
- 1.3.3循环语句 8
- 1.4Python数据结构 9
- 1.4.1列表 9
- 1.4.2字典 11
- 1.4.3元组和集合 11
- 1.5Python文件操作 11
- 1.5.1打开文件 11
- 1.5.2读写文件 12
- 1.5.3关闭文件 13
- 1.6Python面向对象 13
- 1.6.1定义类 14
- 1.6.2实例属性 14
- 1.6.3实例方法 15
- 1.6.4类的继承 16
- 第2章爬虫原理和网页构造 17
- 2.1爬虫原理 17
- 2.1.1网络连接 17
- 2.1.2爬虫原理 18
- 2.2网页构造 21
- 2.2.1Chrome浏览器的安装 21
- 2.2.2网页构造 22
- 2.2.3查询网页信息 23
- 第3章我的第一个爬虫程序 26
- 3.1Python第三方库 26
- 3.1.1Python第三方库的概念 26
- 3.1.2Python第三方库的安装方法 27
- 3.1.3Python第三方库的使用方法 29
- 3.2爬虫三大库 30
- 3.2.1Requests库 30
- 3.2.2BeautifulSoup库 32
- 3.2.3Lxml库 36
- 3.3综合案例1——爬取北京地区短租房信息 37
- 3.3.1爬虫思路分析 37
- 3.3.2爬虫代码及分析 38
- 3.4综合案例2——爬取酷狗TOP500的数据 41
- 3.4.1爬虫思路分析 41
- 3.4.2爬虫代码及分析 43
- 第4章正则表达式 45
- 4.1正则表达式常用符号 45
- 4.1.1一般字符 45
- 4.1.2预定义字符集 46
- 4.1.3数量词 46
- 4.1.4边界匹配 47
- 4.2re模块及其方法 48
- 4.2.1search()函数 48
- 4.2.2sub()函数 49
- 4.2.3findall()函数 49
- 4.2.4re模块修饰符 51
- 4.3综合案例1——爬取《斗破苍穹》全文小说 53
- 4.3.1爬虫思路分析 53
- 4.3.2爬虫代码及分析 55
- 4.4综合案例2——爬取糗事百科网的段子信息 56
- 4.4.1爬虫思路分析 56
- 4.4.2爬虫代码及分析 58
- 第5章Lxml库与Xpath语法 63
- 5.1Lxml库的安装与使用方法 63
- 5.1.1Lxml库的安装(Mac、Linux) 63
- 5.1.2Lxml库的使用 64
- 5.2Xpath语法 68
- 5.2.1节点关系 68
- 5.2.2节点选择 70
- 5.2.3使用技巧 70
- 5.2.4性能对比 74
- 5.3综合案例1——爬取豆瓣网图书TOP250的数据 77
- 5.3.1将数据存储到CSV文件中 77
- 5.3.2爬虫思路分析 78
- 5.3.3爬虫代码及分析 80
- 5.4综合案例2——爬取起点中文网小说信息 83
- 5.4.1将数据存储到Excel文件中 83
- 5.4.2爬虫思路分析 84
- 5.4.3爬虫代码及分析 86
- 第6章使用API 88
- 6.1API的使用 88
- 6.1.1API概述 88
- 6.1.2API使用方法 89
- 6.1.3API验证 91
- 6.2解析JSON数据 93
- 6.2.1JSON解析库 93
- 6.2.2斯必克API调用 94
- 6.2.3百度地图API调用 96
- 6.3综合案例1——爬取PEXELS图片 98
- 6.3.1图片爬取方法 98
- 6.3.2爬虫思路分析 99
- 6.3.3爬虫代码及分析 100
- 6.4综合案例2——爬取糗事百科网的用户地址信息 102
- 6.4.1地图的绘制 102
- 6.4.2爬取思路分析 105
- 6.4.3爬虫代码及分析 106
- 第7章数据库存储 109
- 7.1MongoDB数据库 109
- 7.1.1NoSQL概述 109
- 7.1.2MongoDB的安装 109
- 7.1.3MongoDB的使用 115
- 7.2MySQL数据库 117
- 7.2.1关系型数据库概述 117
- 7.2.2MySQL的安装 117
- 7.2.3MySQL的使用 123
- 7.3综合案例1——爬取豆瓣音乐TOP250的数据 126
- 7.3.1爬虫思路分析 126
- 7.3.2爬虫代码及分析 127
- 7.4综合案例2——爬取豆瓣电影TOP250的数据 132
- 7.4.1爬虫思路分析 132
- 7.4.2爬虫代码及分析 133
- 第8章多进程爬虫 139
- 8.1多线程与多进程 139
- 8.1.1多线程和多进程概述 139
- 8.1.2多进程使用方法 140
- 8.1.3性能对比 140
- 8.2综合案例1——爬取简书网热评文章 143
- 8.2.1爬虫思路分析 143
- 8.2.2爬虫代码及分析 147
- 8.3综合案例2——爬取转转网二手市场商品信息 150
- 8.3.1爬虫思路分析 150
- 8.3.2爬虫代码及分析 152
- 第9章异步加载 159
- 9.1异步加载技术与爬虫方法 159
- 9.1.1异步加载技术概述 159
- 9.1.2异步加载网页示例 159
- 9.1.3逆向工程 162
- 9.2综合案例1——爬取简书网用户动态信息 165
- 9.2.1爬虫思路分析 165
- 9.2.2爬虫代码及分析 171
- 9.3综合案例2——爬取简书网7日热门信息 173
- 9.3.1爬虫思路分析 173
- 9.3.2爬虫代码及分析 179
- 第10章表单交互与模拟登录 182
- 10.1表单交互 182
- 10.1.1POST方法 182
- 10.1.2查看网页源代码提交表单 182
- 10.1.3逆向工程提交表单 185
- 10.2模拟登录 187
- 10.2.1Cookie概述 187
- 10.2.2提交Cookie模拟登录 187
- 10.3综合案例1——爬取拉勾网招聘信息 188
- 10.3.1爬虫思路分析 188
- 10.3.2爬虫代码及分析 193
- 10.4综合案例2——爬取新浪微博好友圈信息 195
- 10.4.1词云制作 195
- 10.4.2爬虫思路分析 202
- 10.4.3爬虫代码及分析 206
- 第11章Selenium模拟浏览器 209
- 11.1Selenium和PhantomJS 209
- 11.1.1Selenium的概念和安装 209
- 11.1.2浏览器的选择和安装 209
- 11.2Selenium和PhantomJS的配合使用 213
- 11.2.1模拟浏览器操作 213
- 11.2.2获取异步加载数据 215
- 11.3综合案例1——爬取QQ空间好友说说 218
- 11.3.1CSV文件读取 218
- 11.3.2爬虫思路分析 220
- 11.3.3爬虫代码及分析 221
- 11.4综合案例2——爬取淘宝商品信息 224
- 11.4.1爬虫思路分析 224
- 11.4.2爬虫代码及分析 226
- 第12章Scrapy爬虫框架 229
- 12.1Scrapy的安装和使用 229
- 12.1.1Scrapy的安装 229
- 12.1.2创建Scrapy项目 233
- 12.1.3Scrapy文件介绍 235
- 12.1.4Scrapy爬虫编写 237
- 12.1.5Scrapy爬虫运行 239
- 12.2综合案例1——爬取简书网热门专题信息 240
- 12.2.1爬虫思路分析 240
- 12.2.2爬虫代码及分析 244
- 12.3综合案例2——爬取知乎网Python精华话题 246
- 12.3.1爬虫思路分析 246
- 12.3.2爬虫代码及分析 248
- 12.4综合案例3——爬取简书网专题收录文章 250
- 12.4.1爬虫思路分析 251
- 12.4.2爬虫代码及分析 254
- 12.5综合案例4——爬取简书网推荐信息 257
- 12.5.1爬虫思路分析 258
- 12.5.2爬虫代码及分析 260