零基础学Python网络爬虫(升级版)
¥99.00定价
作者: 明日科技
出版时间:2024-05
出版社:电子工业出版社
- 电子工业出版社
- 9787121477928
- 1-1
- 525199
- 66255168-8
- 平塑勒
- 16开
- 2024-05
- 228
- 程序设计
- 高职
内容简介
《零基础学Python网络爬虫》(升级版)一书适用于 Python 爬虫入门学习的读者,书中全面介绍了使用 Python进行网络爬虫开发的入门必备知识,本书从学习与应用的角度出发,帮助读者快速掌握网络爬虫的各项技能。全书共 17 章,包括初识网络爬虫、了解 Web 前端、多种网络请求模块、网页数据的多种解析方式、爬取动态渲染的信息、多线程与多进程爬虫、数据处理与存储、App 抓包工具、识别验证码、Scrapy 爬虫框架、Scrapy-Redis 分布式爬虫以及可视化爬虫:数据侦探项目。本书侧重爬虫技术的实战应用,包含典型应用示例、实用案例和项目,力求为读者打造一本学习入门 + 应用 + 实践一体化的精彩的 Python 网络爬虫图书。
目录
第 1 章 初识网络爬虫__eol__ e 学码:5 个__eol__1.1 网络爬虫概述__eol__1.2 网络爬虫的分类__eol__1.3 网络爬虫的基本原理__eol__1.4 Windows下搭建开发环境__eol__1.4.1 安装Anaconda__eol__1.4.2 PyCharm的下载与安装__eol__1.4.3 配置PyCharm__eol__1.4.4 测试PyCharm__eol__第 2 章 请求模块 Urllib__eol__ 精彩实例:22 个 e 学码:5 个__eol__2.1 Urllib简介__eol__2.2 使用urlopen()方法发送请求__eol__2.2.1 发送GET请求__eol__? 实例2.1 演示常用的方法与属性__eol__2.2.2 发送POST请求__eol__? 实例2.2 发送POST请求__eol__2.2.3 设置网络超时__eol__? 实例2.3 处理网络超时__eol__2.3 复杂的网络请求__eol__2.3.1 设置请求头__eol__? 实例2.4 设置请求头__eol__2.3.2 Cookie的获取与设置__eol__? 实例2.5 模拟登录__eol__? 实例2.6 获取Cookie__eol__? 实例2.7 保存Cookie文件__eol__? 实例2.8 使用Cookie信息登录并获取登录后页面中的信息__eol__2.3.3 设置代理IP地址__eol__ __eol__? 实例2.9 设置代理IP地址__eol__2.4 异常处理__eol__? 实例2.10 处理URLError异常__eol__? 实例2.11 使用HTTPError类捕获异常__eol__? 实例2.12 双重异常的捕获__eol__2.5 解析链接__eol__2.5.1 拆分URL__eol__? 实例2.13 使用urlparse()方法拆分URL __eol__? 实例2.14 使用urlsplit()方法拆分URL __eol__2.5.2 组合URL__eol__? 实例2.15 使用urlunparse()方法组合URL__eol__? 实例2.16 使用urlunsplit()方法组合URL__eol__2.5.3 连接URL__eol__? 实例2.17 使用urljoin()方法连接URL __eol__2.5.4 URL的编码与解码__eol__? 实例2.18 使用urlencode()方法编码请求__eol__参数__eol__? 实例2.19 使用quote()方法编码字符串__eol__参数__eol__? 实例2.20 使用unquote()方法解码请求__eol__参数__eol__2.5.5 URL参数的转换__eol__? 实例2.21 使用parse_qs()方法将参数转换__eol__为字典类型__eol__? 实例2.22 使用parse_qsl()方法将参数转换为元组所组成的列表__eol__第 3 章 请求模块 requests__eol__ 精彩实例:13 个 e 学码:6 个__eol__3.1 请求方式__eol__3.1.1 GET请求__eol__? 实例3.1 实现不带参数的GET网络请求__eol__ 3.1.2 对响应结果进行utf-8编码__eol__? 实例3.2 获取请求地址所对应的网页源码__eol__3.1.3 爬取二进制数据__eol__? 实例3.3 下载某网站首页中的logo图片 __eol__3.1.4 GET(带参)请求__eol__3.1.5 POST请求__eol__? 实例3.4 实现POST请求__eol__3.2 复杂的网络请求__eol__3.2.1 添加请求头__eol__? 实例3.5 添加请求头__eol__3.2.2 验证Cookie__eol__? 实例3.6 通过验证Cookie模拟网页登录 __eol__3.2.3 会话请求__eol__? 实例3.7 实现会话请求__eol__3.2.4 验证请求__eol__? 实例3.8 验证请求__eol__3.2.5 网络超时与异常__eol__? 实例3.9 演示网络超时与异常__eol__? 实例3.10 识别网络异常的分类__eol__3.2.6 上传文件__eol__? 实例3.11 上传图片文件__eol__3.3 代理服务__eol__3.3.1 代理的应用__eol__? 实例3.12 通过代理发送请求__eol__3.3.2 获取免费的代理IP地址__eol__3.3.3 检测代理IP地址是否有效__eol__? 实例3.13 检测代理IP地址是否有效__eol__第 4 章 高级网络请求模块__eol__ 精彩实例:1 个 e 学码:5 个__eol__4.1 requests-cache的安装与测试__eol__4.2 缓存的应用__eol__4.3 强大的requests-HTML模块__eol__4.3.1 使用requests-HTML实现网络请求. 51 4.3.2 数据的提取__eol__? 实例4.1 爬取即时新闻__eol__ __eol__第 5 章 正则表达式__eol____eol__ 精彩实例:8 个 e 学码:2 个__eol__5.1 使用search()方法匹配字符串__eol__5.1.1 获取第一个指定字符开头的字符串 __eol__? 实例5.1 搜索第一个“mr_”开头的字符串__eol__5.1.2 可选匹配__eol__? 实例5.2 可选匹配字符串中的内容__eol__5.1.3 匹配字符串边界__eol__? 实例5.3 使用“\b”匹配字符串的边界 __eol__5.2 使用findall()方法匹配字符串__eol__5.2.1 匹配所有指定字符开头的字符串__eol__? 实例5.4 匹配所有以“mr_”开头的字符串__eol__5.2.2 贪婪匹配__eol__? 实例5.5 使用“.*”实现贪婪匹配字符串 __eol__5.2.3 非贪婪匹配__eol__? 实例5.6 使用“.*?”实现非贪婪匹配字符串__eol__5.3 字符串处理__eol__5.3.1 替换字符串__eol__? 实例5.7 使用sub()方法替换字符串__eol__5.3.2 分割字符串__eol__? 实例5.8 使用split()方法分割字符串. __eol__5.4 案例:爬取某音乐热歌榜__eol__5.4.1 分析数据__eol__5.4.2 实现爬虫__eol__第 6 章 XPath 解析__eol__ 精彩实例:15 个 e 学码:2 个__eol__6.1 XPath概述__eol__6.2 XPath的解析操作__eol__6.2.1 解析HTML__eol__? 实例6.1 解析本地的HTML文件__eol__? 实例6.2 解析字符串类型的HTML代码__eol__? 实例6.3 解析服务器返回的HTML代码__eol__6.2.2 获取所有节点__eol__? 实例6.4 获取HTML代码的所有节点__eol__6.2.3 获取子节点__eol__? 实例6.5 获取一个节点中的子节点__eol__? 实例6.6 获取子孙节点__eol__6.2.4 获取父节点__eol__? 实例6.7 获取一个节点的父节点__eol__6.2.5 获取文本__eol__? 实例6.8 获取HTML代码中的文本__eol__6.2.6 属性的单值匹配__eol__? 实例6.9 使用“[@. ]”实现节点属性的__eol__匹配__eol__? 实例6.10 属性多值匹配__eol__? 实例6.11 一个节点中多个属性的匹配. __eol__6.2.7 获取属性__eol__? 实例6.12 获取属性所对应的值__eol__6.2.8 按序获取属性值__eol__? 实例6.13 使用索引按序获取属性对应的值__eol__6.2.9 使用节点轴获取节点内容__eol__? 实例6.14 使用节点轴的方式获取节点内容__eol__6.3 案例:爬取某网站电影Top250__eol__6.3.1 分析请求地址__eol__6.3.2 分析信息位置__eol__6.3.3 爬虫代码的实现__eol__? 实例6.15 编写爬取某网站电影__eol__Top250的代码__eol__第 7 章 解析数据的 Beautiful Soup 模块82__eol__ 精彩实例:13 个 e 学码:3 个__eol__7.1 使用Beautiful Soup解析数据__eol__7.1.1 Beautiful Soup的安装__eol__7.1.2 解析器__eol__7.1.3 Beautiful Soup的简单应用__eol__? 实例7.1 解析HTML代码__eol__7.2 获取节点内容__eol__7.2.1 获取节点对应的代码__eol__? 实例7.2 获取节点对应的代码__eol__7.2.2 获取节点属性__eol__? 实例7.3 获取节点属性__eol__ __eol__7.2.3 获取节点包含的文本内容__eol__7.2.4 嵌套获取节点内容__eol__? 实例7.4 嵌套获取节点内容__eol__7.2.5 关联获