Skip to content
Novus Examples
eml1 KB

Email with Attachment (EML)

A multipart/mixed email with a base64-encoded CSV file attachment — for testing attachment detection, decoding, and extraction from an EML message.

Preview — first 29 lineseml
Content-Type: multipart/mixed; boundary="=_mixed_0003000000000000"
MIME-Version: 1.0
From: Maya Chen <maya@brightside.example>
To: Sam Rivera <sam@meridiansupply.example>
Subject: Delivery addresses for the standing order
Date: Thu, 15 Jan 2026 09:30:00 -0800
Message-ID: <0003-mixed@brightside.example>

--=_mixed_0003000000000000
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64

SGkgU2FtLAoKQXR0YWNoZWQgaXMgb3VyIHVwZGF0ZWQgZGVsaXZlcnkgYWRkcmVzcyBsaXN0IChD
U1YpIGZvciB0aGUgc3RhbmRpbmcgb3JkZXIuClBsZWFzZSB1c2UgdGhlIE1hcmtldCBTdHJlZXQg
YWRkcmVzcyBmb3IgdGhpcyBzaGlwbWVudC4KClRoYW5rcywKTWF5YQo=

--=_mixed_0003000000000000
Content-Type: application/csv; name="delivery-addresses.csv"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="delivery-addresses.csv"

bG9jYXRpb24sY29udGFjdCxhZGRyZXNzLGNpdHksemlwCk1haW4gY2FmZSxNYXlhIENoZW4sMTgg
TWFya2V0IFN0cmVldCxQb3J0bGFuZCw5NzIwMQpSb2FzdGVyeSxEYW5hIExlZSw5MDAgQWxkZXIg
QXZlLFBvcnRsYW5kLDk3MjA5Cg==

--=_mixed_0003000000000000--

Specifications

Format
RFC 822 MIME
Structure
multipart/mixed
Attachment
delivery-addresses.csv (base64)

What is a .eml file?

An EML file is a single email message stored in the RFC 822 / MIME format — plain-text headers (From, To, Subject, Date, Message-ID) followed by the body, which may be plain text, HTML, or a multipart structure with alternative bodies and file attachments encoded in base64.

How to use this file

Use an example EML to test email header parsing, MIME decoding, HTML-part handling, attachment extraction, and EML-to-other-format conversion.

How to use this file for testing

“Email with Attachment (EML)” is a deterministic Novus Examples fixture for Email parsing, Conversion testing. Standards-compliant RFC 822 messages — plain, multipart text+HTML, and with an attachment — plus an MBOX mailbox, for testing header parsing, MIME decoding, attachment extraction, and mailbox splitting.

Documented properties for this file: RFC 822 MIME · multipart/mixed. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

Email fixtures use fixed dates, message IDs, and MIME boundaries so runs are reproducible, and every address is fictional. Test header parsing, MIME decoding, attachment extraction, and EML/MBOX conversion against the documented structure.

Code examples

from email import policy
from email.parser import BytesParser

msg = BytesParser(policy=policy.default).parse(open("with-attachment.eml", "rb"))
print(msg["subject"], msg["from"])

Generated by generation/email_samples.py. Free for any use, no attribution required — license.