Sample code for 30+ languages & platforms
Chilkat2-Python

Get SpamAssassin Score for an Email

See more Email Object Examples

Uses Postmark’s spam API (a RESTfull interface to the SpamAssassin filter tool) to analyze an email to get a spam score.

Chilkat Chilkat2-Python Downloads

Chilkat2-Python
import sys
import chilkat2

success = False

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

# First build an email to check.
email = chilkat2.Email()
email.Subject = "this is a test"
email.From = "support@chilkatsoft.com"
email.AddTo("John Doe","john@example.com")
email.AddPlainTextAlternativeBody("this is a test")
email.AddHtmlAlternativeBody("<html><body><b>Hello John!</b><p>This is a test</p></body></html>")
success = email.AddFileAttachment2("qa_data/jpg/starfish.jpg","image/jpeg")

# Check this email by implementing this curl command:

# curl -X POST "https://spamcheck.postmarkapp.com/filter"
# -H "Accept: application/json"
# -H "Content-Type: application/json"
# -v
# -d '{"email":"raw dump of email", "options":"short"}'

json = chilkat2.JsonObject()
json.UpdateString("email",email.GetMime())
json.UpdateString("options","short")

http = chilkat2.Http()
resp = chilkat2.HttpResponse()
success = http.HttpJson("POST","https://spamcheck.postmarkapp.com/filter",json,"application/json",resp)
if (success == False):
    print(http.LastErrorText)
    sys.exit()

print("response status code = " + str(resp.StatusCode))
print("response body: ")
print(resp.BodyStr)