04 2020 档案
摘要:最近发现公司的scrapy爬虫服务运行起来之后,占用内存持续增大,单个爬虫爬取几十万网页之后,占用内存达到1,2个G,单台服务器运行10个以上的爬虫时,很快就把服务器内存耗尽了。于是着手对爬虫进行空间性能分析及优化首先分析以下可能原因,并依次进行排查: 内存泄露 资源长时间占用无法释放 队列堵塞 排
阅读全文
摘要:首先回顾一下Scrapy-Redis的去重机制。Scrapy-Redis将Request的指纹存储到了Redis集合中,每个指纹的长度为40,例如27adcc2e8979cdee0c9cecbbe8bf8ff51edefb61就是一个指纹,它的每一位都是16进制数。 我们计算一下用这种方式耗费的存储
阅读全文
摘要:使用方式: pip3 install scrapy-redis-bloomfilter 使用的方法和Scrapy-Redis基本相似,在这里说明几个关键配置。 # 1. 替换原来的请求调度器的实现类,使用 scrapy-redis 中请求调度器SCHEDULER = "scrapy_redis_bl
阅读全文
摘要:scrapy shell -s USER_AGENT="" request_url 就可以完成带头部的请求添加,如请求简书(不带头部请求时403错误) scrapy shell -s USER_AGENT="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:6
阅读全文