牛笔了,微软架构师熬夜整理15天,把所有的网络爬虫项目实战整成一个PDF(1)

  • Python中的一些常见的解析库。因为HTML是一种特殊的字符串,所以我们可能不需要那么累构造正则表达式去匹配,用一些通用的解析库就可以把HTML解析出来更方便的拿到元素信息。其中名气比较大的库应该是BeautifulSoup

  • Python中的数据存储方式。比如你想把爬取下来的数据存储在哪里?txt, csv这样的文件里,当时MySQL数据库里,或者一些KV存储的架构比如MongoDB或者Redis?

本书都对上述这些基础的概念做了简单的介绍。还有各种爬虫场景和可能遇到的问题:

  • 不需要登陆的页面爬取。(这个应该是最简单的爬虫项目了)

  • Ajax数据爬取。现在越来越多的网页出于效率的考虑,都是Ajax异步加载数据,这样可以提高用户体验,但对爬虫来说需要额外处理一下。

  • 动态渲染页面爬取。有时候不能直接在网页源代码上看到真正的HTML,这些HTML可能是访问的时刻通过JavaScript渲染的。不过这个时候就可以通过模拟浏览器登录来进行操作。最近帮理波特写的一个爬虫就是通过这种方式实现的。

  • 如何识别验证码。虽说验证码的出现就是为了防止爬虫抓取的,但当然也是有办法破解的。

  • 代理的使用。当我们需要大批量的高频率的爬取信息的时候,有时候会被一些有反爬虫机制的网站封掉IP,这时候我们就需要把我们伪装成一个新的IP来进行继续爬虫操作,这时候就需要代理来维护和管理自己的可用IP。

  • 模拟登录。当我们爬取一些需要登录才能看到的信息的时候,就必须先模拟登录,才能进行进一步的爬虫操作。

  • App的爬取。上述的都是网页端的爬虫任务,但是现在越来越多的信息都只能在手机上看到,这种信息可不可以爬虫获取呢?本书对于这一部分也是有比较详细的介绍和案例,甚至还有朋友圈的爬取。事实上这块我目前也不是很熟悉,这也是我下一步要学习的地方。

难能可贵的时候,每次介绍新的概念和场景的时候,除了介绍概念,作者都是附上实际操作的源码。照着做可以很快的上手。

最后还有两个经典的爬虫框架,pyspider和scrapy,这两个框架在进行大批量的爬取可能会比较有帮助。现在我对这两个框架也没有研究过,还需要进一步的学习。比如scrapy在分布式场景下的部署和应用,本书都是有所涉及的。

接下来是《Python 3网络爬虫开发实战 》这本书的目录:

在这里插入图片描述

朋友们如果有需要全套《Python 3网络爬虫开发实战 》,扫描下方二维码免费领取(如遇扫码问题,评论区留言领取哦)~

在这里插入图片描述

第1章 开发环境配置


1.1 Python 3的安装  1

1.1.1 Windows下的安装  1

1.1.2 Linux下的安装  6

1.1.3 Mac下的安装  8

1.2 请求库的安装  10

1.2.1 requests的安装  10

1.2.2 Selenium的安装  11

1.2.3 ChromeDriver的安装  12

1.2.4 GeckoDriver的安装  15

1.2.5 PhantomJS的安装  17

1.2.6 aiohttp的安装  18

1.3 解析库的安装  19

1.3.1 lxml的安装  19

1.3.2 Beautiful Soup的安装  21

1.3.3 pyquery的安装  22

1.3.4 tesserocr的安装  22

1.4 数据库的安装  26

1.4.1 MySQL的安装  27

1.4.2 MongoDB的安装  29

1.4.3 Redis的安装  36

1.5 存储库的安装  39

1.5.1 PyMySQL的安装  39

1.5.2 PyMongo的安装  39

1.5.3 redis-py的安装  40

1.5.4 RedisDump的安装  40

1.6 Web库的安装  41

1.6.1 Flask的安装  41

1.6.2 Tornado的安装  42

1.7 App爬取相关库的安装  43

1.7.1 Charles的安装  44

1.7.2 mitmproxy的安装  50

1.7.3 Appium的安装  55

1.8 爬虫框架的安装  59

1.8.1 pyspider的安装  59

1.8.2 Scrapy的安装  61

1.8.3 Scrapy-Splash的安装  65

1.8.4 Scrapy-Redis的安装  66

1.9 部署相关库的安装  67

1.9.1 Docker的安装  67

1.9.2 Scrapyd的安装  71

1.9.3 Scrapyd-Client的安装  74

1.9.4 Scrapyd API的安装  75

1.9.5 Scrapyrt的安装  75

1.9.6 Gerapy的安装  76

在这里插入图片描述

第2章 爬虫基础  77


2.1 HTTP基本原理  77

2.1.1 URI和URL  77

2.1.2 超文本  78

2.1.3 HTTP和HTTPS  78

2.1.4 HTTP请求过程  80

2.1.5 请求  82

2.1.6 响应  84

2.2 网页基础  87

2.2.1 网页的组成  87

2.2.2 网页的结构  88

2.2.3 节点树及节点间的关系  90

2.2.4 选择器  91

2.3 爬虫的基本原理  93

2.3.1 爬虫概述  93

2.3.2 能抓怎样的数据  94

2.3.3 JavaScript渲染页面  94

2.4 会话和Cookies  95

2.4.1 静态网页和动态网页  95

2.4.2 无状态HTTP  96

2.4.3 常见误区  98

2.5 代理的基本原理  99

2.5.1 基本原理  99

2.5.2 代理的作用  99

2.5.3 爬虫代理  100

2.5.4 代理分类  100

2.5.5 常见代理设置  101

在这里插入图片描述

第3章 基本库的使用


3.1 使用urllib  102

3.1.1 发送请求  102

3.1.2 处理异常  112

3.1.3 解析链接  114

3.1.4 分析Robots协议  119

3.2 使用requests  122

3.2.1 基本用法  122

3.2.2 高级用法  130

3.3 正则表达式  139

3.4 抓取猫眼电影排行  150

在这里插入图片描述

第4章 解析库的使用


4.1 使用XPath  158

4.2 使用Beautiful Soup  168

4.3 使用pyquery  184

在这里插入图片描述

第5章 数据存储


5.1 文件存储  197

5.1.1 TXT文本存储  197

5.1.2 JSON文件存储  199

5.1.3 CSV文件存储  203

5.2 关系型数据库存储  207

5.2.1 MySQL的存储  207

5.3 非关系型数据库存储  213

5.3.1 MongoDB存储  214

5.3.2 Redis存储  221

在这里插入图片描述

第6章 Ajax数据爬取


6.1 什么是Ajax  232

6.2 Ajax分析方法  234

6.3 Ajax结果提取  238

6.4 分析Ajax爬取今日头条街拍美图  242

在这里插入图片描述

第7章 动态渲染页面爬取  249


7.1 Selenium的使用  249

7.2 Splash的使用  262

7.3 Splash负载均衡配置  286

7.4 使用Selenium爬取淘宝商品  289

在这里插入图片描述

第8章 验证码的识别


8.1 图形验证码的识别  298

8.2 极验滑动验证码的识别  301

8.3 点触验证码的识别  311

8.4 微博宫格验证码的识别  318

在这里插入图片描述

第9章 代理的使用


9.1 代理的设置  326

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

img
img

二、Python必备开发工具

工具都帮大家整理好了,安装就可直接上手!img

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

img

四、Python视频合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。img

六、面试宝典

在这里插入图片描述

在这里插入图片描述

简历模板在这里插入图片描述

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里无偿获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值