Pythonic bindings for crm114
CRM114 is a system to examine incoming e-mail, system log streams, data files or other data streams, and to sort, filter, or alter the incoming files or data streams according to the user's wildest desires.
—crm114.sourceforge.net
import pycrm114
crm = pycrm114.CRM114(classes=["spam", "ham"])
crm.learn("spam", "foo bar")
crm.learn("ham", "bar is good")
assert crm.classify("is bar good")["class"] == "ham"
assert crm.classify("foo bar good")["class"] == "spam"
crm.forget("spam", "foo bar")
assert crm.classify("foo bar good")["class"] == "ham"
import pycrm114
crm = pycrm114.CRM114(
classes=["spam", "ham"],
storage=pycrm.storage.FileSystemStorage("/var/tmp/crm-test")
)
crm.learn("spam", "foo bar")
crm.learn("ham", "bar is good")
crm.save()
new_crm = pycrm114.CRM114(
classes=["spam", "ham"],
storage=pycrm.storage.FileSystemStorage("/var/tmp/crm-test")
)
assert new_crm.classify("is bar good")["class"] == "ham"
assert new_crm.classify("foo bar good")["class"] == "spam"
Debian/Ubuntu: sudo apt-get install libtre5 libtre-dev
OS X: brew install tre
pip install -r requirements/test.txt
To test against different python versions use tox:
tox
To run the tests with the active python:
python setup.py build && nosetests tests
python setup.py build