Wie kann ich HTML-E-Mails mit fetchmail in einfachen Text konvertieren?

1562
Nik Reiman

Ich habe vor kurzem ein E-Mail-Gateway für unseren Bug-Tracker eingerichtet, der ursprünglich dazu gedacht war, die Fehlerberichterstattung von unserer Serversoftware zu optimieren. Ich erzählte meinen Kollegen davon und sie waren auch froh über diese Funktion, aber ich war entsetzt, als ich den Missbrauch meines schlechten Systems entdeckte, der durch Entourage / Outlook-E-Mails verursacht wurde.

Zunächst erscheint die E-Mail-Adresse des Absenders furchtbar verstümmelt, wie beispielsweise 'Name =? ISO-8859-1? B? TGp1bmdzdHL2bQ ==? = "'. Der Hauptteil der E-Mail ist ein HTML-Anhang, der natürlich unnötigen zusätzlichen Code enthält Die Anhänge sind besonders ärgerlich, da sie im Bug-Tracker als Ticket-Anhänge erscheinen und der Körper des Tickets leer ist.

Ich habe ein bisschen gegoogelt, aber nur Lösungen gefunden, die riesige, hässliche awk- oder perl-Skripts nahe legen, die weder wartungsfähig noch robust genug sind, um alle möglichen Randfälle für Outlook-HTML zu berücksichtigen.

Was ist hier eine bessere Lösung?

Unsere Zielplattform ist Windows Server, und ich würde etwas in Python vorziehen, aber wir haben eine cygwin-Installation und können daher bei Bedarf andere Unix-Dienstprogramme verwenden.

3

2 Antworten auf die Frage

6
Ludwig Weinzierl

Wenn Sie Ihre Frage fetchmailim Hinterkopf recherchieren, finden Sie keine guten Antworten. Das ist, weil fetchmailes nicht das Werkzeug für Ihren Job ist.

Wie die Fetchmail-FAQ sagt:

Wiederhole mich: Der Job von fetchmail ist Transport, nicht Politik.

Was die meisten Leute in solchen Fällen tun, ist, sie fetchmailzusammen mit zu verwenden procmail. Am einfachsten wäre es, wenn Sie Ihre Nachrichten html2txtwie hier beschrieben durchleiten .

Wenn Sie nie mit gearbeitet haben procmail, haben Sie keine Angst. procmailist schrecklich, aber wenn man die Dinge einfach hält, ist es nicht so schlimm.

3
grawity

fetchmail ist nur zum Abrufen von E-Mails, wie der Name schon sagt.

Auf Unix-Systemen verwenden die meisten Benutzer die procmailE-Mail-Verarbeitung. Sie können ein Rezept schreiben, /<html/idas die Nachricht prüft und durchläuft w3m -dump( lynx -dumpoder was Sie möchten). Ich bin mir nicht sicher, ob es für Windows eine ähnliche Sache gibt ...

(Ich würde auch procmailmit einem Tutorial zum Deaktivieren von HTML antworten.)