e-Mail aus Outlook parsen
Felix
- programmiertechnik
Hallo!
Ich bekomme regelmässig Mail aus einem CGI-Formular.
Die Daten, möchte ich gerne parsen und sie in eine Access DB einlesen.
Ich kann auch eine MySQL oder MSSQL7.0 DB anlgen. Daran soll es nicht liegen.
...mir fehlt aber absolut der Ansatz, wie ds funzt! :o(
Ich empfange die Mail per Outlook.
Kann mir da eine helfen?
Ich benötige aber nur die Anzahl der Erw./Kinder, Sonstige Wünsche, Strasse, PLZ und Wohnort
Die Mail hat immer den gleichen Inhalt in der selben Reihenfolge:
Sie beginnt wie folgt...
Urlaubsanfrage "Ferienwohnungen Bayerischer Wald 2002"
Die folgende Email wurde von Mr.xy@web.de (Mr XY)
am Samstag, den 4. Mai, 2002 um 17:57:26 gesendet.
---------------------------------------------------------------------------
Urlaub von: 15.08.02
Urlaub bis: 25.08.02
Anzahl Erwachsene: 3
Anzahl Kinder: 2
Alter der Kinder: 13/16
Mindestanzahl Schlafzimmer: 2 Schlafzimmer
Sonstige Wuensche: evt. mit Hund
Strasse: Muehlenweg 13
PLZ: 40000
Wohnort: Hamburg
...ich freue mich über jeden Tip!
Danke
Felix
Halihallo
erstmal entschuldigung, dass ich erst jetzt poste, aber ich bin zur Zeit mit eigenen Projekten zeimlich überfordert (im zeitlichen Sinne) und musste erst einiges erledigen...
Ich empfange die Mail per Outlook.
Kann mir da eine helfen?
Ja! - Vergiss mal das Outlook. Microsoft Produkte haben so einiges gemeinsam: Sie lassen sich nicht dazu bewegen, das zu tun, was man eigentlich will. Die haben irgend so'n eigenleben...
Nun, Programmieren lässt sich Outlook nicht! - Nun gut, vielleicht geht's mit VBA (Visual Basic for Applications), aber da wir schon unter dem Thema "Programmiertechnik" posten, muss ich davon abraten...
Was du brauchst ist:
- Perl, Perl und nochmals Perl :-)
- Eine ODBC - Datenbankanbindung an deine Access-DB (einfach unter Systemsteuerung - ODBC einzurichten)
- oder eine mysql - Datenbank (was ich bevorzugen würde)
- folgende Perl - Module: (werden schon mit ActivePerl mitgeliefert)
- Win95
- Win95::ODBC
- Net::POP3 oder Mail::POP3Client
- und einen Internet-Anschluss
damit lässt sich das alles schon machen und wie, werde ich dir morgen erzählen, falls du noch daran interessiert bist und etwas lernfähig sein willst.
In diesem Sinne, gute Nacht und bis morgen
Philipp
Hallo zusammen,
hab' mal in Outlook via OLE "herumgefuhrwerkt". Klappt recht gut. Bei mir war's Outlook98. Objektmodell bitte in der entsprechenden *.HLP Datei nachlesen (weiß jetzt nicht mehr, wie die heißt).
- Perl, Perl und nochmals Perl :-)
ACK -> der Weg sowas zu machen
- Eine ODBC - Datenbankanbindung an deine Access-DB (einfach unter Systemsteuerung - ODBC einzurichten)
Klaro - oder DBD/DBI
- oder eine mysql - Datenbank (was ich bevorzugen würde)
ACK
- folgende Perl - Module: (werden schon mit ActivePerl mitgeliefert)
- Win95
- Win95::ODBC
- Net::POP3 oder Mail::POP3Client
- und einen Internet-Anschluss
Jo, da stimm' ich dir mal zu. Wenn der Jung aber aber nu mal aus unbedingt seinem Outlook benutzen tun will, jo, dann kenn er das Objektmodell von Outlook sich reinziehen (bestagte Windows .HLP-Datei) und denne mit
use Win32::OLE;
use Win32::OLE::Const 'Microsoft Outlook';
gaanz schwer OLEmäßig in Outlook rumfuhrwerken.
Wie gesagt, Perl (das von ActiveState) + OLÉ klappt bestens.
Is aber mal nix für grüne Jungs, das laß Dir gesagt sein!
zu Deutsch: nix für Einsteiger; gewisse Perl und OLÉ Kenntnisse sollten vorhanden sein. Net::POP3 ist aber sicher der Königsweg für die beschriebene Aufgabenstellung.
Grüße
K@rl
--- der heute irgendwie einen alten Werner-Comic in die Hände bekommen hat
Halihallo K@arl
hab' mal in Outlook via OLE "herumgefuhrwerkt". Klappt recht gut. Bei mir war's Outlook98. Objektmodell bitte in der entsprechenden *.HLP Datei nachlesen (weiß jetzt nicht mehr, wie die heißt).
Jep, jep. OLE hab ich glatt vergessen, obwohl ich da auch schon einige schöne Sachen gebastelt hab (z. B. eine ASP-emu, die ASP Methode Server.CreateObject macht jo nix anderes, als das entsprechende OLE Objekt zu laden)... Ich nehme mal an, dass auch Outlook - Express sowat hat???
- Eine ODBC - Datenbankanbindung an deine Access-DB (einfach unter Systemsteuerung - ODBC einzurichten)
Klaro - oder DBD/DBI
mit Access??? - Wie richtet man denn dies ein? - Gibt's einen DBD Driver für Access?
Jo, da stimm' ich dir mal zu. Wenn der Jung aber aber nu mal aus unbedingt seinem Outlook benutzen tun will, jo, dann kenn er das Objektmodell von Outlook sich reinziehen (bestagte Windows .HLP-Datei) und denne mit
use Win32::OLE;
use Win32::OLE::Const 'Microsoft Outlook';
gaanz schwer OLEmäßig in Outlook rumfuhrwerken.
Hat was, aber die Frage ist wohl berechtigt:
"Was ist schneller und einfacher zu realisieren?". Ein klein wenig Net::POP3 und ODBC, oder sich durch endlose OLE Beschreibungen seitens M$ durchzuwälzen??? - Weiss nicht wie's dir geht, aber ich täte schon ersteres bevorzugen...
Is aber mal nix für grüne Jungs, das laß Dir gesagt sein!
Ich würde auch von beiden Lösungen abraten. Wenn's ja nur ein/zwei Mails pro Tag sind, die man manuell in die DB einfügen kann, lohnt sich der Aufwand nicht, aber wenn's mehr werden, wär's schon doll, aber das muss uns Felix sagen.
--- der heute irgendwie einen alten Werner-Comic in die Hände bekommen hat
Hört man :-)))
Viele Grüsse
Philipp
Halihallo Philipp
Klaro - oder DBD/DBI
mit Access??? - Wie richtet man denn dies ein? - Gibt's einen DBD Driver für Access?
Hmmmm, vielleicht ein nicht ganz überlegter Kommentar ...
Stimmt, hab' nachgesehen, kein DBD für M$ Access.
Jo, da stimm' ich dir mal zu. Wenn der Jung aber aber nu mal aus unbedingt seinem Outlook benutzen tun will, jo, dann kenn er das Objektmodell von Outlook sich reinziehen (bestagte Windows .HLP-Datei) und denne mit
use Win32::OLE;
use Win32::OLE::Const 'Microsoft Outlook';
gaanz schwer OLEmäßig in Outlook rumfuhrwerken.
Hat was, aber die Frage ist wohl berechtigt:
"Was ist schneller und einfacher zu realisieren?". Ein klein wenig Net::POP3 und ODBC, oder sich durch endlose OLE Beschreibungen seitens M$ durchzuwälzen???
Net::POP3 bzw. Mail::POP3Client (oder andere Schöne Packages dazu aus dem CPAN) sind imo der Königsweg. Mit MS OLÉ rummachen ist aufwändig, langsam, versionsabhängig, tricky, schlecht dokumentiert und schlicht und ergreifend nervtötend.
Alternative ist m.E. noch, die Sache gleich auf dem Server zu machen und die Postfach Datei/Dateien zu parsen (gibt's auch schöne CPAN Module für).
Wollte nur anmerken, daß es *möglich ist, über Perl (oder VBA) + OLÉ auf Outlook zuzugreifen + den Weg aufzeigen, es damit aber keineswegs empfehlen.
Is aber mal nix für grüne Jungs, das laß Dir gesagt sein!
Grüße
K@rl
Halihallo Karl
Klaro - oder DBD/DBI
mit Access??? - Wie richtet man denn dies ein? - Gibt's einen DBD Driver für Access?
Hmmmm, vielleicht ein nicht ganz überlegter Kommentar ...
Stimmt, hab' nachgesehen, kein DBD für M$ Access.
ACK. War mir ja auch net sicher :-)
Wollte nur anmerken, daß es *möglich ist, über Perl (oder VBA) + OLÉ auf Outlook zuzugreifen + den Weg aufzeigen, es damit aber keineswegs empfehlen.
ACK. Wollte dich eigentlich nicht kritisieren (und habs trotzdem gemacht, 'tschuldige). War mir klar, was du sagen wolltest.
Viele Grüsse
Philipp
PS: Wo bleibt eigentlich Felix? - Hat's dir die Sprach verschlagen?