顶部
收藏

数据采集技术——Python网络爬虫项目化教程(第2版)


作者:
黄锐军
定价:
43.00元
ISBN:
978-7-04-059690-8
版面字数:
360.000千字
开本:
16开
全书页数:
暂无
装帧形式:
平装
重点项目:
暂无
出版时间:
2023-04-12
读者对象:
高等职业教育
一级分类:
计算机大类
二级分类:
计算机类
三级分类:
计算机应用技术

网络爬虫是一种能自动从网站的相关网页中搜索与提取数据的程序或脚本,采集这些数据是进一步实现数据分析的前提与关键。 Python语言语法简洁、开发效率高,用于编写网络爬虫有特别的优势,尤其业界有专门为 Python语言编写的各种各样的爬虫程序框架,使得使用 Python语言编写爬虫程序更加便捷、高效。

本书包括 5个项目:项目 1为爬取学生信息,讲解了如何使用 Python访问 Web,该技术是编写爬虫程序的基础;项目 2为爬取天气预报数据,讲解了网页数据的爬取方法,其中重点讲解了如何使用 BeautifulSoup进行数据采集与数据分析;项目 3为爬取旅游网站数据,讲解了爬取多个网页数据的方法,重点讲解了如何使用深度优先与广度优先策略爬取数据,同时还讲解了如何使用多线程爬取网页数据;项目 4为爬取航空网站数据,讲解了目前功能强大的分布式爬取框架 Scrapy;项目 5为爬取商城网站数据,讲解了 Selenium动态网页数据的爬取技术。每个项目都遵循由浅入深的学习规律,理论与实践相结合,实现了实用的爬虫程序,进而提高读者的实践能力。

本书为新形态一体化教材,配有丰富的教学资源,包括微课、教学大纲、课程标准、教学课件、案例源码、课后习题及习题答案等。与本书配套的数字课程在“智慧职教”平台(www.icve.com.cn)上线,学习者可以登录平台进行在线学习,授课教师可以调用本课程构建符合自身教学特色的 SPOC课程,详见“智慧职教”服务指南。教师也可发邮件至编辑邮箱 1548103297@qq.com获取相关教学资源。

本书可作为高等职业教育大数据技术、人工智能技术应用、软件技术及其他计算机类专业的数据采集类课程教材,也可作为数据采集技术学习者的自学参考书。

  • 前辅文
  • 项目1 爬取学生信息
    • 1.1 爬虫程序开发环境
      • 1.1.1 爬虫程序简介
      • 1.1.2 搭建Python开发环境
    • 1.2 Flask Web网站
      • 1.2.1 Flask简介
      • 1.2.2 调用Urllib库访问Web网站
    • 1.3 使用GET方法访问网站
      • 1.3.1 客户端使用GET方法发送数据
      • 1.3.2 服务器获取GET方法发送的数据
    • 1.4 使用POST方法向网站发送数据
      • 1.4.1 客户端使用POST方法发送数据
      • 1.4.2 服务器获取POST方法的数据
      • 1.4.3 GET与POST方法的混合使用
    • 1.5 搭建图书网站
      • 1.5.1 准备网站素材
      • 1.5.2 创建网页模板
      • 1.5.3 创建网站服务器程序
      • 1.5.4 运行网站服务器程序
    • 1.6 正则表达式与查找匹配字符串
      • 1.6.1 正则表达式
      • 1.6.2 查找匹配字符串
    • 1.7 实践项目—爬取学生信息
      • 1.7.1 项目简介
      • 1.7.2 服务器程序
      • 1.7.3 客户端程序
    • 练习一
  • 项目2 爬取天气预报数据
    • 2.1 HTML文档结构与文档树
      • 2.1.1 HTML文档结构
      • 2.1.2 HTML文档树
    • 2.2 BeautifulSoup装载HTML文档
      • 2.2.1 BeautifulSoup的安装
      • 2.2.2 BeautifulSoup装载HTML文档
    • 2.3 查找文档元素
      • 2.3.1 查找HTML元素
      • 2.3.2 获取HTML元素属性值
      • 2.3.3 获取元素包含的文本值
      • 2.3.4 高级查找
    • 2.4 遍历文档元素
      • 2.4.1 获取元素节点的父节点元素
      • 2.4.2 获取元素节点的所有子节点元素
      • 2.4.3 获取元素节点的所有子孙节点元素
      • 2.4.4 获取元素节点的兄弟节点
    • 2.5 使用CSS语法查找元素
      • 2.5.1 使用CSS语法
      • 2.5.2 属性的语法规则
      • 2.5.3 使用soup.select()查找子孙节点
      • 2.5.4 使用soup.select()查找直接子节点
      • 2.5.5 使用soup.select()查找兄弟节点
    • 2.6 爬取图书网站数据
      • 2.6.1 分析网站结构
      • 2.6.2 获取图书数据
      • 2.6.3 编写爬虫程序
    • 2.7 实践项目—爬取天气预报数据
      • 2.7.1 项目简介
      • 2.7.2 HTML代码分析
      • 2.7.3 爬取天气预报数据
      • 2.7.4 爬取与存储天气预报数据
    • 练习二
  • 项目3 爬取旅游网站数据
    • 3.1 网站树的爬取路径
      • 3.1.1 Web服务器网站
      • 3.1.2 使用递归程序爬取数据
      • 3.1.3 使用深度优先策略爬取数据
      • 3.1.4 广度优先策略爬取数据
    • 3.2 网站图的爬取路径
      • 3.2.1 复杂的Web网站
      • 3.2.2 改进客户端深度优先策略程序
      • 3.2.3 改进客户端广度优先策略程序
    • 3.3 Python实现多线程
      • 3.3.1 Python的前后台线程
      • 3.3.2 线程的等待
      • 3.3.3 多线程与资源
    • 3.4 爬取网站复杂数据
      • 3.4.1 Web服务器网站
      • 3.4.2 爬取网站的复杂数据
      • 3.4.3 爬取程序的改进
    • 3.5 爬取网站的图像文件
      • 3.5.1 项目简介
      • 3.5.2 单线程爬取图像的程序
      • 3.5.3 多线程爬取图像的程序
    • 3.6 爬取图书网站数据
      • 3.6.1 分析网站结构
      • 3.6.2 换页递归爬取
      • 3.6.3 图书数据存储
      • 3.6.4 编写爬虫程序
      • 3.6.5 执行爬虫程序
    • 3.7 实践项目——爬取旅游网站数据
      • 3.7.1 实践项目简介
      • 3.7.2 网站网页分析
      • 3.7.3 网站数据爬取
      • 3.7.4 网站网页翻页
      • 3.7.5 网站数据存储
      • 3.7.6 编写爬虫程序
      • 3.7.7 执行爬虫程序
    • 练习三
  • 项目4 爬取航空网站数据
    • 4.1 Scrapy框架爬虫简介
      • 4.1.1 安装Scrapy框架
      • 4.1.2 建立Scrapy项目
      • 4.1.3 入口函数与入口地址
      • 4.1.4 Python的yield语句
    • 4.2 Scrapy中查找HTML元素
      • 4.2.1 Scrapy的XPath简介
      • 4.2.2 XPath查找HTML元素
    • 4.3 Scrapy爬取与存储数据
      • 4.3.1 建立Web网站
      • 4.3.2 编写数据项目类
      • 4.3.3 编写爬虫程序mySpider.py
      • 4.3.4 编写数据管道处理类
      • 4.3.5 设置Scrapy的配置文件
    • 4.4 Scrapy爬取网站数据
      • 4.4.1 建立Web网站
      • 4.4.2 编写Scrapy爬虫程序
      • 4.4.3 存储Scrapy爬取的数据
    • 4.5 实践项目—爬取图书网站数据
      • 4.5.1 网站结构分析
      • 4.5.2 图书数据爬取
      • 4.5.3 图书数据存储
      • 4.5.4 设计爬虫程序
      • 4.5.5 执行爬虫程序
    • 4.6 实践项目—爬取航空网站数据
      • 4.6.1 项目简介
      • 4.6.2 网页结构分析
      • 4.6.3 爬取航班数据
      • 4.6.4 获取换页地址
      • 4.6.5 存储航班数据
      • 4.6.6 编写爬虫程序
      • 4.6.7 执行爬虫程序
    • 练习四
  • 项目5 爬取商城网站数据
    • 5.1 使用Selenium编写爬虫程序
      • 5.1.1 JavaScript控制网页
      • 5.1.2 普通爬虫程序问题
      • 5.1.3 安装Selenium框架
      • 5.1.4 编写Selenium爬虫程序
    • 5.2 使用Selenium查找HTML元素
      • 5.2.1 创建产品网站
      • 5.2.2 使用Xpath查找元素
      • 5.2.3 查找元素的文本与属性
      • 5.2.4 使用id查找元素
      • 5.2.5 使用name查找元素
      • 5.2.6 使用CSS查找元素
      • 5.2.7 使用标签查找元素
      • 5.2.8 查找超链接
      • 5.2.9 使用class查找元素
    • 5.3 使用Selenium实现用户登录
      • 5.3.1 创建用户登录网站
      • 5.3.2 使用元素动作
      • 5.3.3 编写爬虫程序
      • 5.3.4 执行JavaScript程序
    • 5.4 使用Selenium爬取Ajax网页数据
      • 5.4.1 创建Ajax网站
      • 5.4.2 理解Selenium爬虫程序
      • 5.4.3 编写爬虫程序
      • 5.4.4 执行爬虫程序
    • 5.5 爬取网站换页数据
      • 5.5.1 创建实验网站
      • 5.5.2 爬虫程序问题
      • 5.5.3 编写爬虫程序
      • 5.5.4 执行爬虫程序
    • 5.6 使用Selenium等待HTML元素
      • 5.6.1 创建延迟网站
      • 5.6.2 编写爬虫程序
      • 5.6.3 Selenium强制等待
      • 5.6.4 Selenium隐式等待
      • 5.6.5 Selenium显式等待
      • 5.6.6 Selenium等待形式
    • 5.7 爬取图书网站数据
      • 5.7.1 网站结构分析
      • 5.7.2 获取网站数据
      • 5.7.3 图书数据存储
      • 5.7.4 编写爬虫程序
    • 5.8 实践项目—爬取商城网站数据
      • 5.8.1 解析网页代码
      • 5.8.2 爬取网页数据
      • 5.8.3 实现网页翻页
      • 5.8.4 商品数据存储
      • 5.8.5 编写爬虫程序
      • 5.8.6 执行爬虫程序
    • 练习五
  • 结语
  • 参考文献

相关图书