猜你喜欢
从零开始学Python网络爬虫

从零开始学Python网络爬虫

书籍作者:罗攀 蒋仟 ISBN:9787111579991
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:3562
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

Python是数据分析的首*语言,而网络中的数据和信息很多,如何从中获取需要的数据和信息呢?*简单、直接的方法就是用爬虫技术来解决。

本书是一本教初学者学习如何爬取网络数据和信息的入门读物。书中不仅有Python的相关内容,而且还有数据处理和数据挖掘等方面的内容。本书内容非常实用,讲解时穿插了22个爬虫实战案例,可以大大提高读者的实际动手能力。

本书共分12章,核心主题包括Python零基础语法入门、爬虫原理和网页构造、第*个爬虫程序、正则表达式、Lxml库与Xpath语法、使用API、数据库存储、多进程爬虫、异步加载、表单交互与模拟登录、Selenium模拟浏览器、Scrapy爬虫框架。此外,书中通过一些典型爬虫案例,讲解了有经纬信息的地图图表和词云的制作方法,让读者体验数据背后的乐趣。

本书适合爬虫技术初学者、爱好者及高等院校的相关学生,也适合数据爬虫工程师作为参考读物,同时也适合各大Python数据分析的培训机构作为教材使用。

本书综合案例

爬取北京地区短租房信息

爬取酷狗TOP500的数据

爬取《斗破苍穹》全文小说

爬取糗事百科网的段子信息

爬取豆瓣网图书TOP250数据

爬取起点中文网小说信息

爬取PEXELS图片

爬取糗事百科网的用户地址信息

爬取豆瓣音乐TOP250的数据

爬取豆瓣电影TOP250的数据

爬取简书网热评文章

爬取转转网二手市场商品信息

爬取简书网用户动态信息

爬取简书网7日热门信息

爬取拉勾网招聘信息

爬取新浪微博好友圈信息

爬取QQ空间好友说说

爬取淘宝商品信息

爬取简书网热门专题信息

爬取知乎网Python精华话题

爬取简书网专题收录文章

爬取简书网推荐信息


作者简介

罗攀,知名论坛Python爬虫专题管理员。擅长Python爬虫技术,并对Python数据分析与挖掘也有研究。曾经在CSDN等多个知名博客网站发表多篇技术文章,深受读者的喜爱。目前从事线上Python网络爬虫的培训工作。

蒋仟,喜爱并擅长Python编程,并将Python作为学术研究手段。在数据采集、数据分析等方面均有较为深入的研究。对Python网络爬虫技术应用也颇有心得。目前从事林业遥感技术的研究,并利用业余时间兼职从事Python培训方面的工作。


编辑推荐

详解网络爬虫的原理、工具、框架和方法,内容新,实战案例多

详解从简单网页到异步加载网页,从简单存储到数据库存储,从简单爬虫到框架爬虫等技术

22个网络爬虫综合实战案例、30个网站信息提取、2500余行代码

详解爬虫的3大方法:正则表达式、BeautifulSoup 4库和Lxml库

详解爬取数据的4大存储方式:TXT、CSV、MongoDB和MySQL

详解Scrapy爬虫框架的安装、项目创建、文件使用及爬取数据的存储


前言

随着Internet的飞速发展,互联网中每天都会产生大量的非结构化数据。如何从这些非结构化数据中提取有效信息,供人们在学习和工作中使用呢?这个问题促使网络爬虫技术应运而生。由于Python语言简单易用,而且还提供了优秀易用的第三方库和多样的爬虫框架,所以使得它成为了网络爬虫技术的主力军。近年来,大数据技术发展迅速,数据爬取作为数据分析的一环也显得尤为重要。程序员要进入与数据处理、分析和挖掘等相关的行业,就必须要掌握Python语言及其网络爬虫的运用,这样才能在就业严峻的市场环境中有较强的职场竞争力和较好的职业前景。

目前,图书市场上仅有的几本Python网络爬虫类图书,要么是国外优秀图书,但书籍翻译隐晦,阅读难度大,而且往往由于网络原因,使得书中的案例不能正常使用,因此不适合初学者;要么是国内资料,但质量参差不齐,而且不成系统,同样不适合初学者。整个图书市场上还鲜见一本适合初学者阅读的Python网络爬虫类图书。本书便是基于这个原因而编写。本书从Python语言基础讲起,然后深入浅出地介绍了爬虫原理、各种爬虫技术及22个爬虫实战案例。本书全部选用国内网站作为爬虫案例,便于读者理解和实现,同时也可以大大提高读者对Python网络爬虫项目的实战能力。

本书特色

1.涵盖Windows 7系统第三方库的安装与配置

本书包含Python模块源的配置、第三方库的安装和使用,以及PyCharm的安装和使用。

2.对网络爬虫技术进行了原理性的分析

本书从一开始便对网络连接和爬虫原理做了基本介绍,并对网络爬虫的基本流程做了详细讲解,便于读者理解本书后面章节中的爬虫项目案例。

3.内容全面,应用性强

本书介绍了从单线程到多进程,从同步加载到异步加载,从简单爬虫到框架爬虫等一系列爬虫技术,具有超强的实用性,读者可以随时查阅和参考。

4.项目案例典型,实战性强,有较高的应用价值

本书介绍了22个爬虫项目实战案例。这些案例来源于不同的网站页面,具有很高的应用价值。而且这些案例分别使用了不同的爬虫技术实现,便于读者融会贯通地理解书中介绍的技术。

本书内容

第1章 Python零基础语法入门

本章介绍了Python和PyCharm的安装及Python最为简单的语法基础,包括简单的流程控制、数据结构、文件操作和面向对象的编程思想。

第2章 爬虫原理和网页构造

本章通过介绍网络连接原理,进而介绍了爬虫的原理,讲解了爬虫的基本流程,另外还介绍了如何使用Chrome浏览器认识网页构造和查询网页信息。

第3章 我的第一个爬虫程序

本章主要介绍了安装请求和解析网页的Python第三方库、Requests库和BeautifulSoup库的使用方法,最后通过综合案例手把手教会读者编写一个简单的爬虫程序。

第4章 正则表达式

本章主要介绍了正则表达式的常用符号及Python中re模块的使用方法,在不需要解析库的情况下完成一个简单的爬虫程序。

第5章 Lxml库与Xpath语法

本章主要介绍了Lxml库在Mac和Linux环境中的安装方法、Lxml库的使用方法及Xpath语法知识,并且通过案例对正则表达式、BeautifulSoup和Lxml进行了性能对比,最后通过综合案例巩固Xpath语言的相关知识。

第6章 使用API

本章主要介绍了API的使用和调用方法,对API返回的JSON数据进行解析,最后通过使用API完成一些有趣的综合案例。

第7章 数据库存储

本章主要介绍了非关系型数据库MongoDB和关系型数据库MySQL的相关知识,并通过综合案例展示了Python对两种数据库的存储方法。

第8章 多进程爬虫

本章主要介绍了多线程及其概念,并通过案例对串行爬虫和多进程爬虫的性能进行了对比,最后通过综合案例介绍了多进程爬取数据的方法和技巧。

第9章 异步加载

本章主要介绍了异步加载的基本概念,以及如何针对异步加载网页使用逆向工程抓取数据,最后通过综合案例讲解了逆向工程的使用方法和常用技巧。

第10章 表单交互与模拟登录

本章主要介绍了Requests库的POST方法,通过观测表单源代码和逆向工程来填写表单以获取网页信息,以及通过提交cookie信息来模拟登录网站。

第11章 Selenium模拟浏览器

本章主要介绍了Selenium模块的安装、Selenium浏览器的选择和安装,以及Selenium模块的使用方法,最后通过综合案例介绍了如何对采用异步加载技术的网页进行爬虫。

第12章 Scrapy爬虫框架

本章主要介绍了Windows 7环境中的Scrapy安装和创建爬虫项目的过程,并通过案例详细讲解了各个Scrapy文件的作用和使用方法,而且通过多个综合案例讲解了如何通过Scrapy爬虫框架把数据存储到不同类型的文件中,最后讲解了如何编写跨页面网站的爬虫代码。

本书读者对象

?? 数据爬虫初学者;

?? 数据分析初级人员;

?? 网络爬虫爱好者;

?? 数据爬虫工程师;

?? Python初级开发人员;

?? 需要提高动手能力的爬虫技术人员;

?? 高等院校的相关学生。

本书配套资源及获取方式

本书涉及的源代码文件等配套学习资源需要读者自行下载。请登录机械工业出版社华章公司的网站www.hzbook.com,然后搜索到本书页面,按照页面上的说明进行下载即可。

虽然我们对书中所述内容都尽量核实,并多次进行文字校对,但因时间有限,加之水平所限,书中疏漏和错误之处在所难免,敬请广大读者批评、指正。联系我们请发E-mail到[email protected]

编著者


目录

前言

第1章 Python零基础语法入门 1

1.1 Python与PyCharm安装 1

1.1.1 Python安装(Windows、Mac和Linux) 1

1.1.2 PyCharm安装 3

1.2 变量和字符串 3

1.2.1 变量 4

1.2.2 字符串的“加法”和“乘法” 4

1.2.3 字符串的切片和索引 5

1.2.4 字符串方法 5

1.3 函数与控制语句 7

1.3.1 函数 7

1.3.2 判断语句 8

1.3.3 循环语句 8

1.4 Python数据结构 9

1.4.1 列表 9

1.4.2 字典 11

1.4.3 元组和集合 11

1.5 Python文件操作 11

1.5.1 打开文件 11

1.5.2 读写文件 12

1.5.3 关闭文件 13

1.6 Python面向对象 13

1.6.1 定义类 14

1.6.2 实例属性 14

1.6.3 实例方法 15

1.6.4 类的继承 16

第2章 爬虫原理和网页构造 17

2.1 爬虫原理 17

2.1.1 网络连接 17

2.1.2 爬虫原理 18

2.2 网页构造 21

2.2.1 Chrome浏览器的安装 21

2.2.2 网页构造 22

2.2.3 查询网页信息 23

第3章 我的第一个爬虫程序 26

3.1 Python第三方库 26

3.1.1 Python第三方库的概念 26

3.1.2 Python第三方库的安装方法 27

3.1.3 Python第三方库的使用方法 29

3.2 爬虫三大库 30

3.2.1 Requests库 30

3.2.2 BeautifulSoup库 32

3.2.3 Lxml库 36

3.3 综合案例1——爬取北京地区短租房信息 37

3.3.1 爬虫思路分析 37

3.3.2 爬虫代码及分析 38

3.4 综合案例2——爬取酷狗TOP500的数据 41

3.4.1 爬虫思路分析 41

3.4.2 爬虫代码及分析 43

第4章 正则表达式 45

4.1 正则表达式常用符号 45

4.1.1 一般字符 45

4.1.2 预定义字符集 46

4.1.3 数量词 46

4.1.4 边界匹配 47

4.2 re模块及其方法 48

4.2.1 search()函数 48

4.2.2 sub()函数 49

4.2.3 findall()函数 49

4.2.4 re模块修饰符 51

4.3 综合案例1——爬取《斗破苍穹》全文小说 53

4.3.1 爬虫思路分析 53

4.3.2 爬虫代码及分析 55

4.4 综合案例2——爬取糗事百科网的段子信息 56

4.4.1 爬虫思路分析 56

4.4.2 爬虫代码及分析 58

第5章 Lxml库与Xpath语法 63

5.1 Lxml库的安装与使用方法 63

5.2 Xpath语法 68

5.3 综合案例1——爬取豆瓣网图书TOP250的数据 77

5.4 综合案例2——爬取起点中文网小说信息 83

第6章 使用API 88

6.1 API的使用 88

6.2 解析JSON数据 93

6.3 综合案例1——爬取PEXELS图片 98

6.4 综合案例2——爬取糗事百科网的用户地址信息 102

第7章 数据库存储 109

7.1 MongoDB数据库 109

7.2 MySQL数据库 117

7.3 综合案例1——爬取豆瓣音乐TOP250的数据 126

7.4 综合案例2——爬取豆瓣电影TOP250的数据 132

第8章 多进程爬虫 139

8.1 多线程与多进程 139

8.2 综合案例1——爬取简书网热评文章 143

8.3 综合案例2——爬取转转网二手市场商品信息 150

第9章 异步加载 159

9.1 异步加载技术与爬虫方法 159

9.2 综合案例1——爬取简书网用户动态信息 165

9.3 综合案例2——爬取简书网7日热门信息 173

第10章 表单交互与模拟登录 182

10.1 表单交互 182

10.2 模拟登录 187

10.3 综合案例1——爬取拉勾网招聘信息 188

10.4 综合案例2——爬取新浪微博好友圈信息 195

第11章 Selenium模拟浏览器 209

11.1 Selenium和PhantomJS 209

11.2 Selenium和PhantomJS的配合使用 213

11.3 综合案例1——爬取QQ空间好友说说 218

11.4 综合案例2——爬取淘宝商品信息 224

第12章 Scrapy爬虫框架 229

12.1 Scrapy的安装和使用 229

12.2 综合案例1——爬取简书网热门专题信息 240

12.3 综合案例2——爬取知乎网Python精华话题 246

12.4 综合案例3——爬取简书网专题收录文章 250

12.5 综合案例4——爬取简书网推荐信息 257



标签
编程,python