经过上一章,爬虫的很多细节都已经了解,这一部分就比较简单了,实现一下断点续传。
爬虫会遇到很多问题,有简单的,也有复杂的。这里,我只介绍一些简单的问题,比如异常处理,应对反爬虫等问题。
前面爬虫和MongoDB的基础上,我们已经具备了爬取大量数据的基础,现在要做的就是怎么样把这些各个方面结合起来。
先分析一下我们应该怎么做。假设我们要爬取58同城。 第一步应该找到所有的类目的链接。第二步就是进入这些链接,找到每个商品的链接。最后就是进入各个商品,爬取商品信息了。
注意,由于网站结构等内容在不断更新,所以现在这个爬虫在不远的未来可能就不再适用了。
我们已经熟悉了MongoDB的基本知识,下一步就是如何让它与Python关联起来了。
首先,为了方便入门,选择一个合适的IDE还是很重要的,因为IntelliJ全家桶包括范围很广,快捷键统一,查看源代码方便,所以我还是选择Pycharm了。
然后,为了更好地与数据库交互,可以安装一个“Mongo Plugin”。
最后,使用PyMongo就可以让Python和MongoDB交互了。
数据库应该有基本的增删改查功能,上一章我们介绍了增和查。这一章,我们重点说下怎么删改。然后再介绍比如过滤,索引等知识。
学爬虫,怎么又来了MongoDB?当然是为了存储数据。
因为爬取的数据,得有一个地方存放,而大数据的存放,使用NoSQL比较好。其中,MongoDB就是一种很常用的NoSQL。MongoDB是一种开源的数据库,为了方便开发和扩展而设计。
这不是一个面面俱到的教程,以后如果有需要,我可能会做一个更深入的教程。