The spamfilter
module is a lightweight, fast and straightforward Python package that helps you to build your own spam filtering pipelines in order to keep your applications featuring user-generated content clean.
It's object-oriented and makes a quick, concise approach to remove spam easy. spamfilter
is highly configurable and ships with deep integrations for third-party APIs, 🤗 Transformers AI/ML text classifiers and language models via Ollama.
Important links
- 🌎 Website and documentation
- 🔓 Report a security vulnerability
- 🚩 Create a new issue
- 👩💻 How to contribute
You can install spamfilter by cloning the GitHub repository, downloading it from the GitHub page or using pip - which is the recommended approach:
pip install spamfilter
Please see the installation guide for more information and methods on how to install spamfilter
and its dependencies, especially if you plan to use API or Ollama functionality.
The most basic primer into the spamfilter
library is to define a pipeline using several spam filters stacked onto each other.
from spamfilter.filters import Length, SpecialChars
from spamfilter.pipelines import Pipeline
# create a new pipeline
m = Pipeline([
# length of 10 to 200 chars, crop if needed
Length(min_length=10, max_length=200, mode="crop"),
# limit use of special characters
SpecialChars(mode="normal")
])
# test a string against it
TEST_STRING = "This is a test string."
print(m.check(TEST_STRING).passed)
Output:
True
This project is licensed under the MIT License, as declared in the LICENSE
file.
Feel free to contribute to the project using the GitHub repository. Additions to the spam filters, pipelines and documentation are always welcome!
Learn more here if you're interested in helping out!