Artikel
1 Kommentar

Über Perl ein HTML-Mail versenden

Spam CC-BY https://www.flickr.com/photos/epsos/

Hin und wieder kommt es vor, dass man aus einem seiner Programme eine Mail verschicken möchte. Purer Text bietet sich häufig an, manchmal muss es aber etwas mehr sein: HTML. Die Auszeichnungssprache ermöglicht nicht nur auf Webseiten die Gestaltung, sondern auch in Mails. Bekanntester Vertreter sind wohl Newsletter. Gerade mit Tabellen kann man viele Zahlen schön veranschaulichen und übersichtlicher darstellen.

Vorraussetzungen für den HTML-Mailversand

Ich bin schnell auf das Perl-Modul MIME::Lite gestoßen um HTML-Mails zu versenden. Die Warnung im CPAN habe ich mal getrost ignoriert. Auf meinem Uberspace-Host war das Modul bereits vorhanden. Unter Debian-Systemen installiert man sich das Paket libmime-lite-perl bzw. unter Archlinux perl-mime-lite. Das sollte es mit den Voraussetzungen für Perl gewesen sein. Ich habe ehrlich gesagt keinen Plan was man auf MTA-Seite machen muss.

Aus einem Perl-Programm heraus HTML-Mails versenden

Und nun kommt der Perl-Schnipsel, der die Welt verändern wird:

#!/usr/bin/perl
use MIME::Lite;

my $mailer = new MIME::Lite (
    From    => 'Testemail <test@demaya.de>',
    Subject => 'Super Subject!',
    Type    => 'text/html',
    To      => 'mail.mail@gmail.com',
    Data    => '<h1>Titel</h1><p>Absatz</p><p><b>Fetter Text</b></p>'
);

$mailer->send();

Das Ergebnis kann sich sehen lassen:

HTML-Mail

 

Mit etwas Übung und SELFHTML-Unterstützung lassen sich ansehnliche und überschaubare Emails stricken. Das Anwendungsgebiet geht wirklich von Jobausgaben über FHEM-Alarme hin zu Reports, die irgendein System generiert.

Quellen und weiterführende Informationen

Beitragsbild: Spam CC-BY Epsos

1 Kommentar

  1. kann mir mal bitte jemand erklären warum man diese häßlichen HTML-Mails nicht los bekommt?

    Es ist in 99% der Fälle überflüssig und wegen dem 1% ist in fast jedem Mailclient ein HTML-Parser. Es macht die Mail einfach nur größer und wenn man das nachladen von daten bzw code bedenkt erzeugt es auch noch große Sicherheits- und Privatsfähreprobleme.

    Philipp

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.