大数据人才培养规划教材

Python网络爬虫技术

资深大数据专家张良均领衔畅销书作者团队,全部采用企业真实项目案例,提供源代码等相关学习资源。
分享 推荐 0 收藏 36 阅读 2.4K
江吉彬 , 张良均 (主编) 詹增荣 , 戴华炜 , 郭信佑 (副主编)

关于本书的内容有任何问题,请联系 左仲海

本书采用了以任务为导向的教学模式,按照解决实际任务的工作流程路线,逐步展开介绍相关的理论知识点,推导生成可行的解决方案,最后落实在任务实现环节。
全书大部分章节紧扣任务需求展开,不堆积知识点,着重于解决问题时思路的启发与方案的实施。通过从任务需求到实现这一完整工作流程的体验,帮助读者真正理解与消化 Python网络爬虫技术。
书中案例全部源于企业真实项目,可操作性强,引导读者融会贯通,并提供源代码等相关学习资源,帮助读者快速掌握大数据相关技能。

内容摘要

本书以任务为导向,较为全面地介绍了不同场景下Python爬取网络数据的方法,包括静态网页、动态网页、登录后才能访问的网页、PC客户端、App等场景。全书共7章,第1章介绍了爬虫与反爬虫的基本概念,以及Python爬虫环境的配置,第2章介绍了爬取过程中涉及的网页前端基础,第3章介绍了在静态网页中爬取数据的过程,第4章介绍了在动态网页中爬取数据的过程,第5章介绍了对登录后才能访问的网页进行模拟登录的方法,第6章介绍了爬取PC客户端、App的数据的方法,第7章介绍了使用Scrapy爬虫框架爬取数据的过程。本书所有章节都包含了实训与课后习题,通过练习和操作实战,可帮助读者巩固所学的内容。
本书可以作为大数据技术爱好者的自学用书,也可作为高校大数据技术类专业的教材。

目录

第 1章 Python爬虫环境与爬虫简介 1
任务1.1 认识爬虫 1
1.1.1 爬虫的概念 1
1.1.2 爬虫的原理 2
1.1.3 爬虫的合法性与robot.txt协议 4
任务1.2 认识反爬虫 4
1.2.1 网站反爬虫的目的与手段 4
1.2.2 爬取策略制定 5
任务1.3 配置Python爬虫环境 6
1.3.1 Python爬虫相关库介绍与配置 7
1.3.2 配置MySQL数据库 7
1.3.3 配置MongoDB数据库 16
小结 20
实训 Python爬虫环境配置 21
课后习题 21
第 2章 网页前端基础 23
任务2.1 认识Python网络编程 23
2.1.1 了解Python网络编程Socket库 24
2.1.2 使用Socket库进行TCP编程 26
2.1.3 使用Socket库进行UDP编程 28
任务2.2 认识HTTP 29
2.2.1 熟悉HTTP请求方法与过程 30
2.2.2 熟悉常见HTTP状态码 32
2.2.3 熟悉HTTP头部信息 33
2.2.4 熟悉Cookie 39
小结 41
实训 使用Socket库连接百度首页 41
课后习题 42
第3章 简单静态网页爬取 43
任务3.1 实现HTTP请求 43
3.1.1 使用urllib 3库实现 44
3.1.2 使用Requests库实现 47
任务3.2 解析网页 52
3.2.1 使用Chrome开发者工具查看网页 52
3.2.2 使用正则表达式解析网页 58
3.2.3 使用Xpath解析网页 61
3.2.4 使用Beautiful Soup库解析网页 66
任务3.3 数据存储 74
3.3.1 将数据存储为JSON文件 74
3.3.2 将数据存储到MySQL数据库 75
小结 78
实训 79
实训1 生成GET请求并获取指定网页内容 79
实训2 搜索目标节点并提取文本内容 79
实训3 在数据库中建立新表并导入数据 80
课后习题 80
第4章 常规动态网页爬取 82
任务4.1 逆向分析爬取动态网页 82
4.1.1 了解静态网页和动态网页的区别 82
4.1.2 逆向分析爬取动态网页 85
任务4.2 使用Selenium库爬取动态网页 88
4.2.1 安装Selenium库及下载浏览器补丁 88
4.2.2 打开浏览对象并访问页面 89
4.2.3 页面等待 90
4.2.4 页面操作 91
4.2.5 元素选取 93
4.2.6 预期条件 96
任务4.3 存储数据至MongoDB数据库 98
4.3.1 了解MongoDB数据库和MySQL数据库的区别 99
4.3.2 将数据存储到MongoDB数据库 100
小结 103
实训 103
实训1 爬取网页“http://www.ptpress. com.cn”的推荐图书信息 103
实训2 爬取某网页的Java图书信息 104
实训3 将数据存储到MongoDB数据库中 104
课后习题 104
第5章 模拟登录 106
任务5.1 使用表单登录方法实现模拟登录 106
5.1.1 查找提交入口 106
5.1.2 查找并获取需要提交的表单数据 108
5.1.3 使用POST请求方法登录 112
任务5.2 使用Cookie登录方法实现模拟登录 114
5.2.1 使用浏览器Cookie登录 115
5.2.2 基于表单登录的Cookie登录 117
小结 119
实训 119
实训1 使用表单登录方法模拟登录数睿思论坛 119
实训2 使用浏览器Cookie模拟登录数睿思论坛 120
实训3 基于表单登录后的Cookie模拟登录数睿思论坛 120
课后习题 120
第6章 终端协议分析 122
任务6.1 分析PC客户端抓包 122
6.1.1 了解HTTP Analyzer工具 122
6.1.2 爬取千千音乐PC客户端数据 125
任务6.2 分析App抓包 126
6.2.1 了解Fiddler工具 127
6.2.2 分析人民日报App 130
小结 132
实训 133
实训1 抓取千千音乐PC客户端的推荐歌曲信息 133
实训2 爬取人民日报App的旅游模块信息 134
课后习题 134
第7章 Scrapy爬虫 135
任务7.1 认识Scarpy 135
7.1.1 了解Scrapy爬虫的框架 135
7.1.2 熟悉Scrapy的常用命令 137
任务7.2 通过Scrapy爬取文本信息 138
7.2.1 创建Scrapy爬虫项目 138
7.2.2 修改items/pipelines脚本 140
7.2.3 编写spider脚本 143
7.2.4 修改settings脚本 148
任务7.3 定制中间件 152
7.3.1 定制下载器中间件 152
7.3.2 定制Spider中间件 156
小结 157
实训 157
实训1 爬取“http://www.tipdm.org”的所有新闻动态 157
实训2 定制BdRaceNews爬虫项目的中间件 158
课后习题 158
附录A 160
附录B 163
参考文献 166

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

张良均,高级信息系统项目管理师,泰迪杯全国大学生数据挖掘竞赛(www.tipdm.org)发起人。华南师范大学、广东工业大学兼职教授,广东省工业与应用数学学会理事。兼有大型高科技企业和高校的工作经历,主要从事大数据挖掘及其应用的策划、研发及咨询培训。全国计算机技术与软件专业技术资格(水平)考试继续教育和CDA数据分析师培训讲师。发表数据挖掘相关论文数20余篇,已取得国家发明专利12项,主编《Hadoop大数据分析与挖掘实战》《Python数据分析与挖掘实战》《R语言数据分析与挖掘实战》等多本畅销图书,主持并完成科技项目9项。获得SAS、SPSS数据挖掘认证及Hadoop开发工程师证书,具有电力、电信、银行、制造企业、电子商务和电子政务的项目经验和行业背景。

同系列书

  • Python数据分析与应用

    黄红梅 张良均 张凌 施兴 周东平

    本书以任务为导向,全面地介绍数据分析的流程和Python数据分析库的应用,详细讲解利用Python解决企业实际...

    ¥49.80
  • Python编程基础

    张健 张良均 何燕 张敏 姜鹏辉

    本书采用以任务为导向的编写模式,全面地介绍了Python编程基础及其相关知识的应用,讲解了如何利用Python...

    ¥39.80
  • Hadoop大数据开发基础

    余明辉 张良均 高杨 陈浩 樊哲

    本书以任务为导向,较为全面地介绍了Hadoop大数据技术的相关知识。全书共6章,具体内容包括Hadoop介绍、...

    ¥39.80
  • Spark大数据技术与应用

    肖芳 张良均 汪作文 胡大威 樊哲

    本书以任务为导向,较为全面地介绍了Spark大数据技术的相关知识。全书共9章,具体内容包括Spark概述;Sc...

    ¥49.80
  • R语言编程基础

    林智章 张良均 李博文 杨惠 麦国炫

    本书以理论结合示例操作的方式,全面介绍了R语言编程基础及其知识的应用,讲解了利用R语言解决部分实际问题的方法。...

    ¥49.80

购买本书用户

相关图书