爬蟲資料去重問題
阿新 • • 發佈:2021-12-14
布隆過濾器
安裝命令:
pip install pybloom_live
使用步驟:
1)安裝
2)建立布隆過濾器
3)向過濾器中新增字串,驗證過濾器輸出結果
例:
import pybloom_live f = pybloom_live.BloomFilter(capacity=10000, error_rate=0.01) # BloomFilter 是定容 ScalableBloomFilter 可以自動擴容 # BloomFilter當數量超過capacity會報錯,如果資料量很大,建議直接使用ScalableBloomFilter print(f.add("1111")) print(f.add("2222")) print(f.add("3333")) print(f.add("1111"))
結果:False False False True
例:
from pybloom_live import ScalableBloomFilter f = pybloom_live.ScalableBloomFilter(initial_capacity=5000000, mode=ScalableBloomFilter.LARGE_SET_GROWTH, error_rate=0.00001) print(f.add("1111")) print(f.add("2222")) print(f.add("3333")) print(f.add("1111"))
設定capacity的值越大,error_rate的值越小,出錯的概率越低,但佔用的資源也會越多。
Yesterday is history,tomorrow ismystery,but today is a gift!That why it is called Present!