潍坊达内的小编总结,学会 Scrapy,自己去尝试搭建了简单的爬虫框架,在做大规模数据爬去的时候能够结构化、工程化地思考大规模的爬取问题。
当然 Scrapy 本身的 selector 、中间件、spider 等会比较难理解,还是建议结合具体的例子,参考别人的代码,去理解其中实现的过程,这样能够更好地理解。
6,本地文件搞不动了,上数据库
爬回来大量的数据之后就发现,本地的文件存起来非常不方便,即便存下来了,打开大文件电脑会卡得很严重。怎么办呢?果断上数据库啊,于是开始入坑 MongoDB.结构化、非结构化的数据都能够存储,安装好 PyMongo,就可以方便地在 Python 中操作数据库了。
当然对于爬虫这一块,并不需要多么高深的数据库技术,主要是数据的入库和提取,增删查改等基本操作。
7,传说中的分布式爬虫
这个时候,基本上很大一部分的网页都能爬了,瓶颈就集中到爬取大规模数据的效率。因为学了 Scrapy,于是自然地接触到一个很厉害的名字:分布式爬虫。

分布式这个东西,一听不明觉厉,感觉很恐怖,但其实就是利用多线程的原理让多个爬虫同时工作,除了前面学过的 Scrapy 和 MongoDB,好像还需要了解 Redis.
Scrapy 用于做基本的页面爬取,MongoDB 用于存储爬取的数据,Redis 则用来存储要爬取的网页队列,也就是任务队列。
分布式这东西看起来很吓人,但其实分解开来,循序渐进地学习,也不过如此。
零基础学习爬虫,坑确实比较多,总结如下:
1.环境配置,各种安装包、环境变量,对小白太不友好;
2.缺少合理的学习路径,上来 Python、HTML 各种学,极其容易放弃;
3.Python有很多包、框架可以选择,但小白不知道哪个更友好;
4.遇到问题甚至不知道如何描述,更不用说去寻找解决办法;
5.网上的资料非常零散,而且对小白不友好,很多看起来云里雾里;
6.有些东西看似懂了,但结果自己写代码还是很困难;
总结:
所以跟我一样,很多人爬坑最大的体会是:尽量不要系统地去啃一些东西,找一个实际的项目(从豆瓣这种简单的入手),直接开始就好。
因为爬虫这种技术,既不需要你系统地精通一门语言,也不需要多么高深的数据库技术,从实际的项目中去学习这些零散的知识点,你能保证每次学到的都是最需要的那部分。
当然麻烦的是,在具体的问题中,如何找到具体需要的那部分学习资源、如何筛选和甄别,遇到困难时如何有效解决,是很多初学者面临的大问题。
以上就是潍坊达内给大家做的内容详解,更多关于IT的学习,请继续关注潍坊达内