requests爬虫改为增量爬虫的一种方法

在爬虫编写中,为了避免重复爬取同一个网页,一般会使用增量爬虫,这样就避免了重复爬取相同的一个网页,只爬取新的网页数据。scrapy-redis做分布式的时候使用的是布隆过滤器来做的增量爬虫,本人平时一般小的爬虫就没有使用框架,直接用的requests写的,requests结合MongoDB数据库做的增量爬虫,如果网站不需要登录的话,就可以先把详情页的url和解析详情页分开来做,把爬取到的url保留一个字段,比如status,爬取到的没有解析的就标记为0,(MongoDB数据库中可以设置唯一索引,避免保存相同的url),这样在写解析详情页的时候用这个来获取(MongoDB数据库)

item = self.coll_url.find_and_modify({'status': 0}, {'$set': {'status': 1}})

这样就可以保证获取到的不是相同的url。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容