redis布隆去重

cooolr 于 2022-04-07 发布

安装

pip install scrapy-redis-bloomfilter

使用

import redis
from scrapy_redis_bloomfilter.bloomfilter import BloomFilter

REDIS_URL = "redis://:redispwd@192.168.1.158:6379/1"
R = redis.Redis.from_url(REDIS_URL)

# `hash_number` 要使用的散列函数数目,默认为6
# `bit` Redis内存位的布隆过滤器使用,30意味着2^30=128MB,默认为30
bf = BloomFilter(server=r, key="spider:bloomfilter:url", hash_number=6, bit=10)

url = "http://baidu.com"
if bf.exists(url):
    return True
else:
    bf.insert(url)