i2pd-tools/baddie-detector/baddiefinder/processor.py
Jeff Becker 3bbbf26094 fix
2016-11-23 10:23:47 -05:00

26 lines
753 B
Python

from . import util
import datetime
class BaddieProcessor:
def __init__(self, filters):
self._filters = filters
self._baddies = dict()
def hook(self, entry):
for f in self._filters:
if f.process(entry) is True:
self.add_baddie(entry, 'detected by {}'.format(f.name))
def add_baddie(self, entry, reason):
addr = util.getaddress(entry)
if addr not in self._baddies:
self._baddies[addr] = ''
self._baddies[addr] += reason + ' '
def write_blocklist(self, f):
f.write('# baddies blocklist generated on {}\n'.format(datetime.datetime.now()))
for k in self._baddies:
f.write('{}:{}\n'.format(self._baddies[k], k))