python-akismet
python-akismet copied to clipboard
Akismet support for Python 2/3
.. image:: https://img.shields.io/github/workflow/status/Nekmo/python-akismet/Tests.svg?style=flat-square&maxAge=2592000 :target: https://github.com/Nekmo/python-akismet/actions?query=workflow%3ATests :alt: Latest Tests CI build status
.. image:: https://img.shields.io/pypi/v/python-akismet.svg?style=flat-square :target: https://pypi.python.org/pypi/python-akismet :alt: Latest PyPI version
.. image:: https://img.shields.io/pypi/pyversions/python-akismet.svg?style=flat-square :target: https://pypi.python.org/pypi/python-akismet :alt: Python versions
.. image:: https://img.shields.io/codeclimate/github/Nekmo/python-akismet.svg?style=flat-square :target: https://codeclimate.com/github/Nekmo/python-akismet :alt: Code Climate
.. image:: https://img.shields.io/codecov/c/github/Nekmo/python-akismet/master.svg?style=flat-square :target: https://codecov.io/github/Nekmo/python-akismet :alt: Test coverage
.. image:: https://img.shields.io/requires/github/Nekmo/python-akismet.svg?style=flat-square :target: https://requires.io/github/Nekmo/python-akismet/requirements/?branch=master :alt: Requirements Status
Python-akismet ##############
Pykismet3 fork. Support older versions of Python and improvements.
Supported API
The Following Akismet API Calls are currently supported:
- Comment Check
- Submit Ham
- Submit Spam
Unsupported API
The following Akismet API Calls are not yet supported:
- Key Verification
Installation
-
Signup for Akismet and get yourself an API key at http://akismet.com/plans/ (You don't need to pay)
-
Install this library::
pip install python-akismet
-
Make some calls to Akismet (see example below to get started)
Example
Import and instance Akismet.
.. code-block:: python
from akismet import Akismet
# API KEY (first argument) is required. blog can be defined later.
akismet = Akismet('1ba29d6f120c', blog="http://your.blog/url",
application_user_agent="My Application Name/0.0.1")
Comment Check
.. code-block:: python
akismet.check('192.168.1.3', 'Firefox / COMMENT USER AGENT', comment_author='King Arthur',
comment_author_email='[email protected]', comment_author_url='http://camelot.co.uk',
comment_content='The Lady of the Lake, her arm clad in the purest shimmering samite, '
'held aloft Excalibur from the bosom of the water, signifying by divine'
' providence that I, Arthur, was to carry Excalibur. That is why I '
'am your king.', referrer='http://camelot-search/?q=Peasant+Woman')
Submit Ham
.. code-block:: python
akismet.submit_ham('192.168.1.12', 'FIREFOX / COMMENT USER AGENT', comment_author='Tim',
comment_author_email='[email protected]',
comment_author_url='http://witch.co.uk',
comment_content="Look, that rabbit's got a vicious streak a mile wide!"
"It's a killer!")
Submit Spam
.. code-block:: python
akismet.submit_spam('192.168.1.4', 'FIREFOX / COMMENT USER AGENT', comment_author='Frenchman',
comment_author_email='[email protected]',
comment_author_url='http://guy-de-lombard.fr',
comment_content="You don't frighten us, English pig-dogs! Go and boil your "
"bottoms, sons of a silly person! I blow my nose at you, "
"so-called Ah-thoor Keeng, you and all your silly English "
"K-n-n-n-n-n-n-n-niggits!")
Documentation #############
The examples above show you pretty much everything you need to know.
For a full list of supported parameters for each API call, see http://akismet.com/development/api/
The code is only ~100 lines long anyway, so just look at '''akismet''' if you aren't sure about something.