Skip to main content

Convert Outlook msg to PDF

Project description

Test msgtopdf Code style: black

Converts Outlook .msg files to PDF

msgtopdf is a Python 3 module to convert Outlook .msg files to PDF and extract the attachments. Unlike the majority of current modules msgtopdf maintains the formatting of HTML and RTF messages and embeds any inline images in the PDF output.

As the module uses the win32com library the host machine must have Outlook installed.

msgtopdf uses the wkhtmltopdf tool to convert the HTML message to PDF and wkhtmltopdf must be installed separately.

Currently msgtopdf extracts the message body and attachments to a new subfolder using the subject of the email as the folder name.


Module Usage

Example module usage is provided in the tests/ file.

Command Line Usage

The command-line option msg2pdf will convert individual files or all *.msg files in a directory.

msg2pdf --help for options.

Usage: msg2pdf [OPTIONS] PATH

msg2pdf converts Outlook email messages (msg) to pdf.

The output is a folder for each email using the email subject as the
folder name including a pdf of the email and all attachments.

Inline images are included in the email pdf.

    -f, --file       Convert an individual file PATH to pdf.
    -d, --directory  Convert all msg files in directory PATH to pdf.
    --help           Show this message and exit.


Install the Windows binary release of wkhtmltopdf

Ensure that wkhtmltopdf command is found in your PATH.

This can be tested by entering wkhtmltopdf --version in your Command Prompt.

You should receive an output similar to the attached.

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\>wkhtmltopdf --version
wkhtmltopdf 0.12.5 (with patched qt)


Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

msgtopdf-0.1.6.tar.gz (4.7 kB view hashes)

Uploaded source

Built Distribution

msgtopdf-0.1.6-py3-none-any.whl (6.2 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page