The free, open-source, online OLM convertor.
Use on the web | Download the legacy version for desktop and command-line
A utility to convert an Outlook for Mac archive (.olm file), that can only be opened with Outlook for Mac, to standard .html or .eml file formats, viewable in your browser.
Output files are organised hierarchically, for example a message contained in an OLM file will be output to a file like "<output directory>/[email protected]/Inbox/Subject - Mon, 04 July 2022 21.04.56.eml".
Available as a web app, Legacy GUI, a python command-line interface, and as a module.
Supports attachments but can only output emails with the HTML and plain text content types.
usage: olmConvert.py [-h] [--noAttachments] [--format {eml,html}] [--verbose] olmPath outputDir
positional arguments:
olmPath Path to OLM file
outputDir Output directory
options:
-h, --help show this help message and exit
--noAttachments Don't include attachments in output (decreasing file size)
--format {eml,html} Specifies output format
--verbose Verbose output
Convert OLM file specified by olmPath, creating a directory of files of type format at outputDir. Will not include attachments if optional parameter noAttachments is set to True.
format must be eml or html.
Reads OLM format XML message (xmlString) and returns a ConvertedMessage object containing the message converted to a string of the provided format. Can also return ValueError.
olmZip parameter is a instance of zipfile.ZipFile open on the OLM file. This parameter is required in order to convert attachments.
If noAttachments parameter is True, no attachments will be included in generated EML messages.
format must be eml or html.
Converts email header string value to RFC2047 base64 encoded UTF-8 string (https://datatracker.ietf.org/doc/html/rfc2047).
Converts <emailAddress> element (xml.etree.ElementTree.Element) to an email header value.
Generates a MIME boundary ID (https://datatracker.ietf.org/doc/html/rfc2046#section-5.1.1).
Wraps lines of a given HTML body to maximum of 78 characters as recommended by RFC 2822 (https://datatracker.ietf.org/doc/html/rfc2822#section-2.1.1).
Generate file data for use with specified format.
attachmentElm specifies the <messageAttachment> OLM element (xml.etree.ElementTree.Element) containing the attachment.
olmZip parameter is a instance of zipfile.ZipFile open on the OLM file. Required as attachment files are contained within OLM file.
format must be eml or html.
When using format=EML, this does not provide message boundaries.


