- 商品参数
-
- 作者:
无著
- 出版社:机械工业出版社
- 出版时间:2021-01
- 开本:16开
- ISBN:9781908679699
- 版权提供:机械工业出版社
面向初学者全面介绍Python网络爬虫的实战宝典,涵盖网络爬虫的核心概念、算法和技术实现,内容系统,案例丰富。
商品基本信息 |
|
商品名称: | Python网络爬虫技术与实战 |
作 者: | 赵国生 王健 |
市 场 价: | 89.00元 |
ISBN 号: | 9787111674115 |
出版日期: | 2021-01 |
页 数: | 472 |
字 数: | 288千字 |
出 版 社: | 机械工业出版社 |
目录 |
前言 第1章 Python环境搭建及基础学习1 1.1 Python 3.6的安装与配置1 1.1.1 Windows下的安装1 1.1.2 Linux下的安装5 1.1.3 macOS下的安装6 1.2 IDE工具:PyCharm的安装7 1.3 基础语法11 1.3.1 第一个Python程序11 1.3.2 Python命名规范13 1.3.3 行和缩进15 1.3.4 注释和续行15 1.3.5 Python输出16 1.4 字符串18 1.4.1 字符串运算符18 1.4.2 字符串内置函数19 1.5 数据结构22 1.5.1 列表22 1.5.2 元组25 1.5.3 集合27 1.5.4 字典29 1.6 控制语句31 1.6.1 条件表达式31 1.6.2 选择结构32 1.6.3 循环结构33 1.7 函数、模块和包36 1.7.1 函数36 1.7.2 模块40 1.7.3 包42 1.8 文件的读写操作 45 1.8.1 文件读写步骤与打开模式46 1.8.2 文件的基本操作48 1.8.3 文件写入操作52 1.9 面向对象53 1.9.1 类和对象54 1.9.2 封装性58 1.9.3 继承性59 1.9.4 多态性60 1.10 本章小结61 练习题61 第2章 爬虫原理和网络基础62 2.1 爬虫是什么62 2.2 爬虫的意义62 2.3 爬虫的原理64 2.4 爬虫技术的类型66 2.4.1 聚焦爬虫技术66 2.4.2 通用爬虫技术67 2.4.3 增量爬虫技术69 2.4.4 深层网络爬虫技术70 2.5 爬虫抓取策略71 2.5.1 深度优先遍历策略 71 2.5.2 广度优先遍历策略71 2.5.3 Partial PageRank策略72 2.5.4 大站优先策略72 2.5.5 反向链接数策略73 2.5.6 OPIC策略 73 2.6 反爬虫和反反爬虫73 2.6.1 反爬虫73 2.6.2 反反爬虫77 2.7 网络基础79 2.7.1 网络体系结构79 2.7.2 网络协议79 2.7.3 Socket编程86 2.8 本章小结88 练习题88 第3章 Python常用库89 3.1 Python库的介绍89 3.1.1 常用标准库89 3.1.2 安装使用第三方库91 3.2 urllib库92 3.2.1 urlopen()函数用法93 3.2.2 urlretrieve()函数用法95 3.2.3 URL编码和URL解码96 3.2.4 urlparse()和urlsplit()函数用法97 3.3 request库99 3.3.1 request库的基本使用99 3.3.2 request库的高级用法109 3.4 lxml库113 3.4.1 lxml库的安装和使用113 3.4.2 XPath介绍114 3.4.3 XPath语法116 3.4.4 lxml和XPath的结合使用119 3.5 Beautiful Soup库122 3.5.1 Beautiful Soup库的安装和使用123 3.5.2 提取数据125 3.5.3 CSS选择器131 3.6 实战案例134 3.6.1 使用Beautiful Soup解析网页134 3.6.2 微信公众号爬虫135 3.6.3 爬取豆瓣读书TOP500136 3.6.4 使用urllib库爬取百度贴吧137 3.7 本章小结139 练习题139 第4章 正则表达式140 4.1 概念介绍140 4.2 正则表达式语法141 4.2.1 正则模式的字符141 4.2.2 运算符优先级142 4.3 匹配规则143 4.3.1 单字符匹配规则143 4.3.2 多字符匹配规则144 4.3.3 边界匹配146 4.3.4 分组匹配147 4.4 re模块常用函数150 4.4.1 re.match函数150 4.4.2 re.search函数152 4.4.3 re.compile函数153 4.4.4 re.sub函数155 4.4.5 re.findall函数156 4.4.6 re.finditer函数157 4.4.7 re.split函数157 4.5 本章小结158 练习题158 第5章 验证码159 5.1 PIL库159 5.1.1 PIL库的安装159 5.1.2 PIL库的常用函数160 5.1.3 PIL库的应用163 5.1.4 应用PIL到实际开发169 5.2 Tesseract库172 5.2.1 Tesseract库的安装172 5.2.2 Tesseract库的使用174 5.2.3 Tesseract库的识别训练174 5.3 TensorFlow库180 5.3.1 TensorFlow库的安装180 5.3.2 TensorFlow基本操作184 5.3.3 TensorFlow基础架构186 5.3.4 TensorFlow创建线性回归模型189 5.3.5 TensorFlow识别知乎验证码190 5.4 4种验证码的解决思路191 5.5 OCR处理验证码194 5.6 实战案例195 5.7 本章小结199 练习题199 第6章 抓包利器Fiddler200 6.1 Fiddler简介200 6.2 Fiddler的安装和配置200 6.2.1 Fiddler的安装201 6.2.2 Fiddler的配置202 6.3 Fiddler捕获会话205 6.4 QuickExec命令行的使用207 6.5 Fiddler断点功能209 6.6 Fiddler的实用工具210 6.7 实战案例212 6.7.1 使用Fiddler抓取数据并分析212 6.7.2 使用Fiddler抓取HTTPS流量214 6.7.3 使用Fiddler抓取手机应用215 6.8 本章小结219 练习题219 第7章 数据存储220 7.1 数据的基本存储220 7.1.1 数据存储至TXT220 7.1.2 数据存储至CSV222 7.1.3 数据存储至JSON223 7.2 数据存储至MySQL数据库227 7.2.1 配置MySQL服务227 7.2.2 安装PyMySQL228 7.2.3 创建示例项目230 7.2.4 PyMySQL基本操作231 7.3 数据存储至MongoDB数据库231 7.4 数据存储至XML234 7.5 常见数据存储方式的比较235 7.6 本章小结237 练习题237 第8章 Scrapy爬虫框架238 8.1 Scrapy框架介绍238 8.2 Scrapy框架详解239 8.2.1 框架内组件及作用239 8.2.2 Scrapy运行流程240 8.2.3 数据流向240 8.3 Scrapy框架中的Selector240 8.4 Beautiful Soup库的使用246 8.4.1 简单示例246 8.4.2 四大对象种类247 8.4.3 遍历文档树249 8.4.4 搜索文档树249 8.4.5 CSS选择器253 8.5 CrawlSpider的使用254 8.5.1 Spider的简单用法254 8.5.2 CrawlSpider概述254 8.5.3 使用CrawlSpider获取rules256 8.5.4 使用CrawlSpider进行模拟登录257 8.6 Scrapy Shell的使用257 8.6.1 启动Scrapy Shell258 8.6.2 功能函数258 8.6.3 Scrapy对象258 8.6.4 Scrapy Shell示例258 8.7 Scrapyrt的使用259 8.7.1 GET请求259 8.7.2 POST请求261 8.8 Scrapy对接Selenium262 8.9 实战案例264 8.9.1 Scrapy知乎信息爬取264 8.9.2 Scrapy微博信息爬取268 8.9.3 Scrapy机票信息爬取272 8.10 本章小结274 练习题274 第9章 多线程爬虫275 9.1 多线程和Threading模块275 9.1.1 多线程定义和特点275 9.1.2 Threading模块276 9.2 使用Thread类创建实例277 9.2.1 可传递函数的Thread类实例277 9.2.2 可调用的Thread类实例278 9.2.3 派生Thread子类279 9.3 多线程方法的使用280 9.3.1 多线程创建280 9.3.2 多线程冲突及解决283 9.3.3 使用Semaphore调度线程285 9.3.4 生产者-消费者模式286 9.3.5 共享全局变量及锁机制288 9.4 Queue线程安全队列289 9.5 实战案例291 9.5.1 多线程爬取糗事百科292 9.5.2 多线程爬取网站图片296 9.6 本章小结298 练习题298 第10章 动态网页爬虫299 10.1 浏览器开发者工具299 10.1.1 调试工具的介绍299 10.1.2 调试工具的使用示例306 10.2 异步加载技术309 10.2.1 异步加载技术介绍309 10.2.2 AJAX数据爬取310 10.3 表单交互与模拟登录314 10.3.1 表单交互314 10.3.2 模拟登录315 10.4 Selenium模拟浏览器316 10.4.1 Selenium操作浏览器316 10.4.2 Selenium和ChromeDriver的配合使用332 10.5 实战案例337 10.5.1 Selenium职位信息爬取338 10.5.2 Selenium直播平台数据爬取339 10.6 本章小结341 练习题341 第11章 分布式爬虫342 11.1 分布式爬虫概述342 11.1.1 主从分布式爬虫343 11.1.2 对等分布式爬虫343 11.2 Scrapy-redis分布式组件345 11.2.1 Scrapy-redis简介346 11.2.2 Scrapy-redis工作机制348 11.2.3 Scrapy-redis安装配置349 11.2.4 Scrapy-redis常用配置356 11.2.5 Scrapy-redis键名介绍357 11.2.6 Scrapy-redis简单示例357 11.3 redis数据库358 11.4 Scrapy-redis源码分析364 11.5 通过scrapy_redis实现分布式爬虫369 11.6 实战案例371 11.7 本章小结376 练习题377 第12章 电商网站商品信息爬虫项目378 12.1 商品信息爬虫功能分析378 12.1.1 商品信息爬虫接口分析378 12.1.2 商品信息爬虫页面分析380 12.2 商品信息爬虫实现思路380 12.2.1 Selenium环境配置380 12.2.2 pyquery环境配置381 12.3 电商网站商品信息编写实战381 12.3.1 获取电商网站商品信息列表381 12.3.2 电商网站商品信息列表解析383 12.3.3 保存爬取的商品信息385 12.3.4 电商网站商品信息的页码遍历386 12.4 pyquery解析电商网站商品信息388 12.4.1 pyquery调用CSS选择器389 12.4.2 pyquery使用parent()获取父节点391 12.4.3 pyquery遍历商品信息393 12.4.4 pyquery获取商品信息内部文本395 12.4.5 CSS选择器398 12.5 运行代码399 12.5.1 爬虫的Chrome Headless模式400 12.5.2 爬虫对接Firefox400 12.5.3 爬虫对接PhantomJS400 12.6 本章小结401 练习题401 第13章 生活娱乐点评类信息爬虫项目402 13.1 功能分析402 13.1.1 项目描述402 13.1.2 静态网页抓取402 13.1.3 动态网页抓取404 13.2 请求-响应关系410 13.2.1 请求对象410 13.2.2 请求方法410 13.3 请求头和请求体411 13.3.1 请求头412 13.3.2 响应412 13.3.3 保存响应结果412 13.4 通过Selenium模拟浏览器抓取413 13.4.1 Selenium的安装413 13.4.2 Selenium的实践案例414 13.4.3 Selenium获取文章的所有评论414 13.5 实战演练Scrapy框架实例415 13.5.1 编写spider416 13.5.2 编写item.py417 13.5.3 为items对象赋值417 13.5.4 编写piplines.py418 13.5.5 配置setting.py418 13.5.6 完整代码及结果419 13.6 调试与运行421 13.7 本章小结422 练习题422 第14章 图片信息类爬虫项目423 14.1 功能分析423 14.2 实现思路423 14.2.1 urllib模块的使用424 14.2.2 Scrapy框架的使用426 14.3 程序执行429 14.4 实战演练图片验证码429 14.4.1 开发环境与工具429 14.4.2 Anaconda3的安装430 14.4.3 问题步骤434 14.4.4 解决步骤434 14.4.5 图片预处理代码435 14.4.6 图片切割437 14.4.7 KNN训练437 14.4.8 CNN加载数据439 14.4.9 训练CNN模型440 14.4.10 CNN模型预测442 14.5 调试运行443 14.6 本章小结444 练习题444 练习题答案445 |
内容简介 |
本书是一本系统、全面地介绍Python网络爬虫的实战宝典。作者融合自己丰富的工程实践经验,紧密结合演示应用案例,内容覆盖了几乎所有网络爬虫涉及的核心技术。在内容编排上,一步步地剖析算法背后的概念与原理,提供大量简洁的代码实现,助你从零基础开始编程实现深度学习算法。 全书按照学习爬虫所涉及的核心技术从易到难,再到应用的顺序分为14章。第1章介绍Python的安装配置和基础语法。 第2章介绍爬虫类型、抓取策略以及网络基础知识。第3章介绍Python常用库。第4章介绍正则表达式的语法、匹配规则。第5章讲解PIL库、Tesseract库和TensorFlow库的语法、类型和识别方法。第6章介绍抓包利器Fiddler。第7章介绍数据存储。第8章介绍Scrapy爬虫框架。第9章介绍多线程爬虫。第10章介绍动态网页爬虫。第11章介绍分布式爬虫。第12章介绍电商网站商品信息爬虫项目。第13章介绍生活娱乐点评类信息爬虫。第14章介绍图片信息类爬虫项目。 |
1