Sample code for 30+ languages & platforms
CkPython

Check if a MIME Part is Application Data

See more MIME Examples

Demonstrates the Chilkat Mime.IsApplicationData method, which returns whether the Content-Type begins with application/. It takes no arguments and applies to the current part.

Note: The file path is relative to the application's current working directory. Absolute paths may also be used. Supply the path to your own file.

Background: The application/ family covers everything that is not plain media or text — PDFs, Office documents, ZIP archives, JSON, and the S/MIME application/pkcs7-* types. This broad check is a quick way to flag "binary document" parts, though you will usually look at the specific subtype to decide how to handle each.

Chilkat CkPython Downloads

CkPython
import sys
import chilkat

success = False

#  Demonstrates the Mime.IsApplicationData method, which returns whether the Content-Type begins with application/.  It takes no arguments and applies to the current
#  part.  This example iterates the parts of a multipart message and reports which ones match.

mime = chilkat.CkMime()
success = mime.LoadMimeFile("qa_data/multipart_message.eml")
if (success == False):
    print(mime.lastErrorText())
    sys.exit()

n = mime.get_NumParts()
part = chilkat.CkMime()

for i in range(0,n):
    success = mime.PartAt(i,part)
    if (success == False):
        print(mime.lastErrorText())
        sys.exit()

    if (part.IsApplicationData()):
        print("Part " + str(i) + " (" + part.contentType() + ") is application data.")