Skip to main content

Parses an email message file and extracts the data from it.

Project description

Coverage Status CLA assistant CircleCI

parse-emails

Parses an email message file and extracts the data from it.

The key features are:

  • Supports .eml and .msg files.
  • Extracts nested attachments.

Requirements

Python 3.8.5+

Installation

$ pip install parse-emails
$ brew install libmagic

Usage

The main class EmailParser contains all what you need to parse an email:

import parse_emails

email = parse_emails.EmailParser(file_path=<file_path>, max_depth=3, parse_only_headers=False)
email.parse()
print(email.parsed_email['Subject'])

Inputs

Argument Name Description
file_path* the file_path of a in msg or eml format
parse_only_headers Will parse only the headers and return headers table, Default is False
max_depth How many levels deep we should parse the attached emails (e.g. email contains an emails contains an email). Default depth level is 3. Minimum level is 1, if set to 1 the script will parse only the first level email
file_info the file info

Contributing

Contributions are welcome and appreciated. To contribute you can submit a PR.

Before merging any PRs, we need all contributors to sign a contributor license agreement. By signing a contributor license agreement, we ensure that the community is free to use your contributions.

When you open a new pull request, a bot will evaluate whether you have signed the CLA. If required, the bot will comment on the pull request, including a link to accept the agreement. The CLA document is also available for review as a PDF.

If the license/cla status check remains on Pending, even though all contributors have accepted the CLA, you can recheck the CLA status by visiting the following link (replace [PRID] with the ID of your PR): https://cla-assistant.io/check/demisto/email-parser?pullRequest=[PRID] .

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

parse_emails-0.1.48.tar.gz (8.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

parse_emails-0.1.48-py3-none-any.whl (8.9 MB view details)

Uploaded Python 3

File details

Details for the file parse_emails-0.1.48.tar.gz.

File metadata

  • Download URL: parse_emails-0.1.48.tar.gz
  • Upload date:
  • Size: 8.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.10.19 Linux/6.6.87+

File hashes

Hashes for parse_emails-0.1.48.tar.gz
Algorithm Hash digest
SHA256 e89f8c18dd10681870d8f032c56055fd67f7f88fa50579ff6ffda60d18ed7f3c
MD5 c8a08ea2ef1bc09bcc4a52f59dc3d14c
BLAKE2b-256 dc4d1dd00154326d3aab58da586e56149390666131b88d3ef20a460c4f39e713

See more details on using hashes here.

File details

Details for the file parse_emails-0.1.48-py3-none-any.whl.

File metadata

  • Download URL: parse_emails-0.1.48-py3-none-any.whl
  • Upload date:
  • Size: 8.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.10.19 Linux/6.6.87+

File hashes

Hashes for parse_emails-0.1.48-py3-none-any.whl
Algorithm Hash digest
SHA256 0b3a6deeff574dcda3eb1b33afb6e13117a82188db72cf0f7cf8176f8e6b8e99
MD5 fc81f4d10d92b474f23b71788bd4e58a
BLAKE2b-256 fc94134638a0b152d6a5b94b90c70227a9d253847784c1e0e05e481f68d94663

See more details on using hashes here.

Supported by

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