互联网
类型
可以朗读
语音朗读
83千字
字数
2024-05-01
发行日期
展开全部
主编推荐语
本书从学习与应用的角度出发,帮助读者快速掌握网络爬虫的各项技能。
内容简介
全书共15章,包括初识网络爬虫、请求模块Urllib、请求模块requests、高级网络请求模块、正则表达式、XPath解析、解析数据的Beautiful Soup模块、多线程与多进程爬虫、数据处理与存储、App抓包工具、识别验证码、Scrapy爬虫框架、爬取编程e学网视频、爬取某网站的手机数据,以及爬取北、上、广、深租房信息。
书中所有知识都结合具体实例进行讲解,设计的程序代码给出了详细的注释,可以使读者轻松领会Python网络爬虫程序开发的精髓,快速提高开发技能。
目录
- 版权信息
- 内容简介
- 前言
- 第1章 初识网络爬虫
- 1.1 网络爬虫概述
- 1.2 网络爬虫的分类
- 1.3 网络爬虫的基本原理
- 1.4 Windows下搭建开发环境
- 1.4.1 安装Anaconda
- 1.4.2 PyCharm的下载与安装
- 1.4.3 配置PyCharm
- 1.4.4 测试PyCharm
- 第2章 请求模块Urllib
- 2.1 Urllib简介
- 2.2 使用urlopen()方法发送请求
- 2.2.1 发送GET请求
- 2.2.2 发送POST请求
- 2.2.3 设置网络超时
- 2.3 复杂的网络请求
- 2.3.1 设置请求头
- 2.3.2 Cookie的获取与设置
- 2.3.3 设置代理IP地址
- 2.4 异常处理
- 实例2.10 处理URLError异常
- 实例2.11 使用HTTPError类捕获异常
- 实例2.12 双重异常的捕获
- 2.5 解析链接
- 2.5.1 拆分URL
- 2.5.2 组合URL
- 2.5.3 连接URL
- 2.5.4 URL的编码与解码
- 2.5.5 URL参数的转换
- 第3章 请求模块requests
- 3.1 请求方式
- 3.1.1 GET请求
- 3.1.2 对响应结果进行utf-8编码
- 3.1.3 爬取二进制数据
- 3.1.4 GET(带参)请求
- 3.1.5 POST请求
- 3.2 复杂的网络请求
- 3.2.1 添加请求头
- 3.2.2 验证Cookie
- 3.2.3 会话请求
- 3.2.4 验证请求
- 3.2.5 网络超时与异常
- 3.2.6 上传文件
- 3.3 代理服务
- 3.3.1 代理的应用
- 3.3.2 获取免费的代理IP地址
- 3.3.3 检测代理IP地址是否有效
- 第4章 高级网络请求模块
- 4.1 requests-cache的安装与测试
- 4.2 缓存的应用
- 4.3 强大的requests-HTML模块
- 4.3.1 使用requests-HTML实现网络请求
- 4.3.2 数据的提取
- 第5章 正则表达式
- 5.1 使用search()方法匹配字符串
- 5.1.1 获取第一个指定字符开头的字符串
- 5.1.2 可选匹配
- 5.1.3 匹配字符串边界
- 5.2 使用findall()方法匹配字符串
- 5.2.1 匹配所有指定字符开头的字符串
- 5.2.2 贪婪匹配
- 5.2.3 非贪婪匹配
- 5.3 字符串处理
- 5.3.1 替换字符串
- 5.3.2 分割字符串
- 5.4 案例:爬取某音乐热歌榜
- 5.4.1 分析数据
- 5.4.2 实现爬虫
- 第6章 XPath解析
- 6.1 XPath概述
- 6.2 XPath的解析操作
- 6.2.1 解析HTML
- 6.2.2 获取所有节点
- 6.2.3 获取子节点
- 6.2.4 获取父节点
- 6.2.5 获取文本
- 6.2.6 属性的单值匹配
- 6.2.7 获取属性
- 6.2.8 按序获取属性值
- 6.2.9 使用节点轴获取节点内容
- 6.3 案例:爬取某网站电影Top250
- 6.3.1 分析请求地址
- 6.3.2 分析信息位置
- 6.3.3 爬虫代码的实现
- 第7章 解析数据的Beautiful Soup模块
- 7.1 使用Beautiful Soup解析数据
- 7.1.1 Beautiful Soup的安装
- 7.1.2 解析器
- 7.1.3 Beautiful Soup的简单应用
- 7.2 获取节点内容
- 7.2.1 获取节点对应的代码
- 7.2.2 获取节点属性
- 7.2.3 获取节点包含的文本内容
- 7.2.4 嵌套获取节点内容
- 7.2.5 关联获取
- 7.3 使用方法获取内容
- 7.3.1 find_all()方法——获取所有符合条件的内容
- 7.3.2 find()方法——获取第一个匹配的节点内容
- 7.3.3 其他方法
- 7.4 CSS选择器
- 实例7.13 使用CSS选择器获取节点内容
- 第8章 多线程与多进程爬虫
- 8.1 进程与线程
- 8.1.1 什么是进程
- 8.1.2 什么是线程
- 8.2 创建线程
- 8.2.1 使用threading模块创建线程
- 8.2.2 使用Thread子类创建线程
- 8.3 线程间通信
- 实例8.3 验证线程之间是否可以共享信息
- 8.3.1 什么是互斥锁
- 8.3.2 使用互斥锁
- 8.3.3 使用Queue在线程间通信
- 8.4 创建进程的常用方式
- 8.4.1 使用multiprocessing模块创建进程
- 8.4.2 使用Process子类创建进程
- 8.4.3 使用Pool进程池创建进程
- 8.5 进程间通信
- 实例8.9 验证进程之间能否直接共享信息
- 8.5.1 队列简介
- 8.5.2 多进程队列的使用
- 8.5.3 使用队列在进程间通信
- 第9章 数据处理与存储
- 9.1 数据处理
- 9.1.1 pandas数据结构
- 9.1.2 数据的增、删、改、查
- 9.1.3 NaN数据处理
- 9.1.4 删除重复数据
- 9.2 文件的存取
- 9.2.1 TXT基本文件操作
- 9.2.2 存取CSV文件
- 9.2.3 存取Excel文件
- 9.3 SQLite数据库
- 9.3.1 创建数据库文件
- 9.3.2 操作SQLite
- 9.4 MySQL数据库
- 9.4.1 MySQL服务器下载
- 9.4.2 安装MySQL服务器
- 9.4.3 配置MySQL
- 9.4.4 安装PyMySQL
- 9.4.5 连接数据库
- 9.4.6 创建数据表
- 9.4.7 操作MySQL数据表
- 第10章 App抓包工具
- 10.1 Charles工具的下载与安装
- 10.2 SSL证书的安装
- 10.2.1 安装PC端证书
- 10.2.2 设置代理
- 10.2.3 配置网络
- 10.2.4 安装手机端证书
- 第11章 识别验证码
- 11.1 字符验证码
- 11.1.1 搭建OCR环境
- 11.1.2 下载验证码图片
- 11.1.3 识别验证码
- 11.2 第三方验证码识别
- 实例11.3 第三方打码平台
- 11.3 滑动拼图验证码
- 实例11.4 滑动拼图验证码
- 第12章 Scrapy爬虫框架
- 12.1 了解Scrapy爬虫框架
- 12.2 Scrapy的基本应用
- 12.2.1 创建Scrapy项目
- 12.2.2 创建爬虫
- 12.2.3 获取数据
- 12.2.4 将爬取的数据保存为多种格式的文件
- 12.3 编写Item Pipeline
- 12.3.1 Item Pipeline的核心方法
- 12.3.2 将信息存储到数据库
- 12.4 自定义中间件
- 12.4.1 设置随机请求头
- 12.4.2 设置Cookie
- 12.4.3 设置代理IP地址
- 12.5 文件下载
- 实例12.8 下载手机商品图片
- 第13章 爬取编程e学网视频
- 13.1 案例效果预览
- 13.2 案例准备
- 13.3 业务流程
- 13.4 实现过程
- 13.4.1 查找视频页面
- 13.4.2 分析视频地址
- 13.4.3 实现视频下载
- 第14章 爬取某网站的手机数据
- 14.1 案例效果预览
- 14.2 案例准备
- 14.3 业务流程
- 14.4 实现过程
- 14.4.1 分析手机主页中的每页地址
- 14.4.2 分析每个手机的详情页地址
- 14.4.3 确认详情页手机数据的位置
- 14.4.4 创建MySQL数据表
- 14.4.5 编写爬虫程序
- 第15章 爬取北、上、广、深租房信息
- 15.1 案例效果预览
- 15.2 案例准备
- 15.3 业务流程
- 15.4 实现过程
- 15.4.1 获取租房信息总页码
- 15.4.2 确认数据所在的标签位置
- 15.4.3 编写爬虫程序提取数据
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。