Python网络爬虫技术

Python网络爬虫技术

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

编辑推荐

以任务为导向,介绍了不同场景下Python爬取网络数据的方法。

内容简介

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

作者简介

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

章节目录

版权信息

内容提要

大数据专业系列图书编写委员会

前言

第1章 Python爬虫环境与爬虫简介

任务1.1 认识爬虫

1.1.1 爬虫的概念

1.1.2 爬虫的原理

1.1.3 爬虫的合法性与robot.txt协议

任务1.2 认识反爬虫

1.2.1 网站反爬虫的目的与手段

1.2.2 爬取策略制定

任务1.3 配置Python爬虫环境

1.3.1 Python爬虫相关库介绍与配置

1.3.2 配置MySQL数据库

1.3.3 配置MongoDB数据库

小结

实训 Python爬虫环境配置

课后习题

第2章 网页前端基础

任务2.1 认识Python网络编程

2.1.1 了解Python网络编程Socket库

2.1.2 使用Socket库进行TCP编程

2.1.3 使用Socket库进行UDP编程

任务2.2 认识HTTP

2.2.1 熟悉HTTP请求方法与过程

2.2.2 熟悉常见HTTP状态码

2.2.3 熟悉HTTP头部信息

2.2.4 熟悉Cookie

小结

实训 使用Socket库连接百度首页

课后习题

第3章 简单静态网页爬取

任务3.1 实现HTTP请求

3.1.1 使用urllib 3库实现

3.1.2 使用Requests库实现

任务3.2 解析网页

3.2.1 使用Chrome开发者工具查看网页

3.2.2 使用正则表达式解析网页

3.2.3 使用Xpath解析网页

3.2.4 使用Beautiful Soup库解析网页

任务3.3 数据存储

3.3.1 将数据存储为JSON文件

3.3.2 将数据存储到MySQL数据库

小结

实训

实训1 生成GET请求并获取指定网页内容

实训2 搜索目标节点并提取文本内容

实训3 在数据库中建立新表并导入数据

课后习题

第4章 常规动态网页爬取

任务4.1 逆向分析爬取动态网页

4.1.1 了解静态网页和动态网页的区别

4.1.2 逆向分析爬取动态网页

任务4.2 使用Selenium库爬取动态网页

4.2.1 安装Selenium库及下载浏览器补丁

4.2.2 打开浏览对象并访问页面

4.2.3 页面等待

4.2.4 页面操作

4.2.5 元素选取

4.2.6 预期条件

任务4.3 存储数据至MongoDB数据库

4.3.1 了解MongoDB数据库和MySQL数据库的区别

4.3.2 将数据存储到MongoDB数据库

小结

实训

实训1 爬取网页“http://www.ptpress.com.cn”的推荐图书信息

实训2 爬取某网页的Java图书信息

实训3 将数据存储到MongoDB数据库中

课后习题

第5章 模拟登录

任务5.1 使用表单登录方法实现模拟登录

5.1.1 查找提交入口

5.1.2 查找并获取需要提交的表单数据

5.1.3 使用POST请求方法登录

任务5.2 使用Cookie登录方法实现模拟登录

5.2.1 使用浏览器Cookie登录

5.2.2 基于表单登录的Cookie登录

小结

实训

实训1 使用表单登录方法模拟登录数睿思论坛

实训2 使用浏览器Cookie模拟登录数睿思论坛

实训3 基于表单登录后的Cookie模拟登录数睿思论坛

课后习题

第6章 终端协议分析

任务6.1 分析PC客户端抓包

6.1.1 了解HTTP Analyzer工具

6.1.2 爬取千千音乐PC客户端数据

任务6.2 分析App抓包

6.2.1 了解Fiddler工具

6.2.2 分析人民日报App

小结

实训

实训1 抓取千千音乐PC客户端的推荐歌曲信息

实训2 爬取人民日报App的旅游模块信息

课后习题

第7章 Scrapy爬虫

任务7.1 认识Scarpy

7.1.1 了解Scrapy爬虫的框架

7.1.2 熟悉Scrapy的常用命令

任务7.2 通过Scrapy爬取文本信息

7.2.1 创建Scrapy爬虫项目

7.2.2 修改items/pipelines脚本

7.2.3 编写spider脚本

7.2.4 修改settings脚本

任务7.3 定制中间件

7.3.1 定制下载器中间件

7.3.2 定制Spider中间件

小结

实训

实训1 爬取“http://www.tipdm.org”的所有新闻动态

实训2 定制BdRaceNews爬虫项目的中间件

课后习题

附录A

附录B

参考文献

Python网络爬虫技术是2019年由人民邮电出版社出版,作者张良均。

得书感谢您对《Python网络爬虫技术》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
计算机网络技术(第4版) 电子书
12章详解计算机网络、技术、安全与应用
虚拟化与网络存储技术 电子书
力求由浅入深,循序渐进。采用“任务驱动”的编写方式,以实际问题引出相关原理和概念。
Python基础教程(第3版) 电子书
手把手带你从零开始学习Python。
网络调研技术与实战 电子书
市场调研书籍,来自专业机构的案例深度剖析,五大调研主题多角度解读,帮你快速掌握网络调研的新技术、新方法与新流程。
Spark海量数据处理:技术详解与平台实战 电子书
在数字经济时代,数据是重要的资源要素;同时,新的数据又在源源不断地产生,企业面临的一个基本问题就是如何管理和利用这些数据,这对传统的数据处理方法与分析框架提出了新的诉求和挑战,也是全球业界与学界为关心的问题。为了满足大数据时代对信息的快速处理的需求,一个分布式的开源计算框架Apache Spark应运而生。经过十年的发展,Spark已经成为目前大数据处理的标杆,在整个业界得到了广泛的使用。对大数据工程师来说,用Spark构建数据管道无疑是很好的选择,而对数据科学家来说,Spark也是高效的数据探索工具。 本书基于Spark发行版2.4.4写作而成,包含大量的实例与一个完整项目,技术理论与实战相结合,层次分明,循序渐进。本书不仅介绍了如何开发Spark应用的基础内容,包括Spark架构、Spark编程、SparkSQL、Spark调优等,还探讨了Structured Streaming、Spark机器学习、Spark图挖掘、Spark深度学习、Alluxio系统等高级主题,同时完整实现了一个企业背景调查系统,借鉴了数据湖与Lambda架构的思想,涵盖了批处理、流处理应用开发,并加入了一些开源组件来满足业务需求。学习该系统可以使读者从实战中巩固所学,并将技术理论与应用实战融会贯通。 本书适合准备学习Spark的开发人员和数据分析师,以及准备将Spark应用到实际项目中的开发人员和管理人员阅读,也适合计算机相关专业的高年级本科生和研究生学习和参考,对于具有一定的Spark使用经验并想进一步提升的数据科学从业者也是很好的参考资料。