×
图文详情
  • ISBN:9787115505064
  • 装帧:简裝本
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:165
  • 出版时间:2019-04-01
  • 条形码:9787115505064 ; 978-7-115-50506-4

本书特色

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

内容简介

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

目录

第 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开发工程师证书,具有电力、电信、银行、制造企业、电子商务和电子政务的项目经验和行业背景。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航