1. 程式人生 > 其它 >爬蟲資料去重問題

爬蟲資料去重問題

布隆過濾器

安裝命令:
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!