Bereiche
News
Rewind
Tipps & Berichte
Forum
Galerie
Journals
Events
Umfragen
Themenwoche
Kleinanzeigen
Interaktiv
Anmelden
Registrierung
Zu allen empfangenen Nachrichten
Suche...
Zur erweiterten Suche
Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum
>
Entwickler
>
PDF-Anhänge automatisiert aus eingehender Mail extrahieren
PDF-Anhänge automatisiert aus eingehender Mail extrahieren
MrChad
04.03.23
09:00
Im Netz kursieren verschiedene Versionen eines Applescripts, die automatisiert PDF-Anhänge aus eingehenden Mails extrahieren sollen. Leider funktionieren diese nur so la-la und versagen oft.
Diesen Scripts ist vieles gemeinsam und sie versagen typischerweise an der entscheidenden Stelle mit wechselnden Fehlern:
save oneAttachment in file (destFolder & theName) -- (oder ähnlich)
... und hier geht's weiter ...
Hilfreich?
+1
Kommentare
MikeMuc
04.03.23
14:09
MrChad
wechselnden Fehlern… bitte aufzählen und im Wortlaut wiedergeben
Bei den aktuellen Systemen könnte ich mir gut vorstellen, das da zB Apples Sandbox bzw. fehlende Zugriffsrechte des Scripts oder Mail auf die verwendeten Ordner einem dazwischenfunken.
Hilfreich?
0
ThorsProvoni
04.03.23
14:30
Ich hab für Dich mal ChatGPT gefragt (und ausprobiert - es funktioniert):
Betriebssystem: macOS. Schreibe ein Apple Script, das aus einer Email durch eine Regel aufgerufen wird und den Anhang einer Email in ein Verzeichnis speichert
Sicher, ich kann Ihnen ein Apple Script erstellen, das aus einer E-Mail durch eine Regel aufgerufen wird und den Anhang einer E-Mail in ein Verzeichnis speichert. Bitte führen Sie die folgenden Schritte aus:
Öffnen Sie den Apple Script Editor auf Ihrem Mac. Sie finden es unter "Programme
Dienstprogramme
Script-Editor".
Erstellen Sie ein neues Skript, indem Sie auf "Neues Dokument" klicken.
Fügen Sie den folgenden Code in das Skript ein:
using terms from application "Mail"
on perform mail action with messages theMessages for rule theRule
repeat with theMessage in theMessages
repeat with theAttachment in mail attachments of theMessage
try
set attachmentName to name of theAttachment
set saveFolder to (choose folder with prompt "Speicherort auswählen") as text
set savePath to saveFolder & attachmentName
save theAttachment in file (savePath)
end try
end repeat
end repeat
end perform mail action with messages
end using terms from
Speichern Sie das Skript unter einem beliebigen Namen ab, z.B. "Speichern von E-Mail-Anhängen".
Öffnen Sie die "Mail"-App und wählen Sie "Einstellungen
Regeln".
Klicken Sie auf das "+"-Symbol, um eine neue Regel hinzuzufügen.
Geben Sie der Regel einen Namen, z.B. "Speichern von Anhängen".
Wählen Sie "Alle Bedingungen" aus dem ersten Dropdown-Menü aus.
Wählen Sie "Anhang vorhanden" aus dem zweiten Dropdown-Menü aus.
Klicken Sie auf "Aktion hinzufügen" und wählen Sie "Skript ausführen" aus.
Wählen Sie das Skript aus, das Sie zuvor erstellt haben.
Klicken Sie auf "OK", um die Regel zu speichern.
Jetzt wird das Skript jedes Mal ausgeführt, wenn eine E-Mail mit einem Anhang empfangen wird, der den Bedingungen der Regel entspricht. Das Skript fragt Sie nach einem Speicherort und speichert dann den Anhang in diesem Verzeichnis.
Hilfreich?
+1
ThorsProvoni
04.03.23
14:39
Falls Du den Anhang automatisch (ohne Prompt) speichern möchtest (in dem Beispiel im HOME-Verzeichnis), sieht das ganze so aus (sagt ChatGPT, ich habe es erfolgreich ausprobiert):
using terms from application "Mail"
on perform mail action with messages theMessages for rule theRule
repeat with theMessage in theMessages
repeat with theAttachment in mail attachments of theMessage
try
set attachmentName to name of theAttachment
set saveFolder to (path to home folder) as text
set savePath to saveFolder & attachmentName
save theAttachment in file (savePath)
end try
end repeat
end repeat
end perform mail action with messages
end using terms from
Hilfreich?
0
MrChad
04.03.23
15:10
ThorsProvoni
ChatGPT
Ich bin absolut dagegen, dass Versatzstücke von diesen hirnlosen Plauder-Robotern in der Rubrik "es funktioniert" gepostet werden. Nicht ohne Grund ist sowas auf StackOverflow etc. schon längst untersagt worden.
Im Übrigen hatte ich bereits ganz zu Beginn Links zu vier (in Worten: 4) im wesentlichen gleichlautenden Scripten gepostet.
Hilfreich?
-1
MrChad
04.03.23
15:12
MikeMuc
wechselnden Fehlern… bitte aufzählen und im Wortlaut wiedergeben
Ich erinnere mich nicht mehr an jede einzelne Meldung. Was definitiv NICHT mit irgendwelchen Rechten zu tun hat:
(1) Wenn die genannten Scripts unmittelbar
beim Empfang
der Nachricht getriggert werden, ist das Attachment-Objekt öfter mal
(null)
.
Das kann man umgehen, indem man im Script zuerst die Mail (im eigenen Fenster) öffnet.
Auf Deutsch: In Mail ist der vollständige MIME-Tree dem Script erst zugänglich, nachdem die Mail betrachtet wurde. Das ist für automatische Bearbeitung natürlich Müll.
(2) Bei komplexeren Mails (ich vermute: mit mehreren Attachments und "multipart/related" Struktur) findet Mail das eigentliche Attachment auch nicht.
Ich habe hier verschiedene Nachrichten(-Typen) ein und desselben Absenders. Manche können die genannten Scripte bearbeiten, manche nicht.
Hilfreich?
-1
ttwm
04.03.23
15:44
@MrChad: welche Systemversion bzw. Apple Mail-Version verwendest Du? AppleScript ist je nach eingesetztem Software-Stand leider unterschiedlich zickig (von gar nicht bis vollkommen…).
Hilfreich?
0
Oxymoron
04.03.23
15:46
Ich benutze dafür Hazel.
Hilfreich?
0
MrChad
04.03.23
16:50
ttwm
welche Systemversion
Selbstverständlich immer nur
the-latest-and-greatest
, s.unten
Ich darf dann noch erwähnen, dass der hier beschriebene Code nur einen Teil des gesamten Ablaufs enthält. Den Teil mit der Klassifizierung und Sortierung der diversen PDFs habe ich euch erspart.
Und nicht zuletzt steckt in dem Projekt auch ein gutes Stück
Spaß an der Freude
drin.
Hilfreich?
0
ThorsProvoni
04.03.23
17:31
MrChad
ThorsProvoni
ChatGPT
Ich bin absolut dagegen, dass Versatzstücke von diesen hirnlosen Plauder-Robotern in der Rubrik "es funktioniert" gepostet werden. Nicht ohne Grund ist sowas auf StackOverflow etc. schon längst untersagt worden.
Im Übrigen hatte ich bereits ganz zu Beginn Links zu vier (in Worten: 4) im wesentlichen gleichlautenden Scripten gepostet.
Verstehe nicht, warum Du so angepisst bist wenn man Dir versucht zu helfen. Ich habe den Code übrigens vorher ausprobiert und deshalb geschrieben, dass es funktioniert.
Ob eine KI sinnvoll ist oder nicht oder ob man das benutzen soll oder nicht kann man gerne diskutieren, ich fand das als gutes Beispiel, wie man mit Hilfe einer KI bei einem konkreten Problem eine Lösung finden kann - was Dir anscheinend vorher nicht gelungen ist.
Hilfreich?
+5
MikeMuc
05.03.23
12:05
ThorsProvoni
echt cool, der Vorschlag mit der KI. Nun muß die nur noch mit ihrer geballten Intelligenz rausfinden, warum das bei manchen Mails nicht funktioniert.
Ich würde das erstmal nicht mit einer Regel versuchen sondern im Scripteditor das Ganze erstmal an einer markierten Mail testen. 1x bei einer, bei der es funktioniert und dann mit einer Mail, bei der Mail bzw das Script streikt. Dann ggf solch eine Problemmail ( mit unverfänglichen Inhalt) mal exemplarisch zum Anschauen bei Pastebin („Quellcode aus der .eml) Posten. Dann kann hier die Foren KI vielleicht was erkennen
Hilfreich?
-1
marm
05.03.23
12:30
ThorsProvoni
Verstehe nicht, warum Du so angepisst bist wenn man Dir versucht zu helfen. Ich habe den Code übrigens vorher ausprobiert und deshalb geschrieben, dass es funktioniert.
MikeMuc
echt cool, der Vorschlag mit der KI. Nun muß die nur noch mit ihrer geballten Intelligenz rausfinden, warum das bei manchen Mails nicht funktioniert.
Ihr habt schon gesehen, dass MrChad sich zuvor mit zwei Journal-Artikeln viel Arbeit gemacht habt?
Nun diskutiert Ihr stattdessen das KI-Ergebnis. Mich würde das auch frustrieren.
Der rote Text dort ⬇︎ ist ein Link.
MrChad
... und hier geht's weiter ...
Hilfreich?
0
MikeMuc
05.03.23
14:06
marm
ich diskutiere da garnix sondern finde die Idee und das dort fabrizierte Resultat einfach nur gut. Wie kommst du darauf, das man aus einem Lob eine Abwertung herauslesen soll?
Davon ab, war meine 2. Intention, wie man der Ursache auf den Grund kommen könnte, warum manche Mails nicht wie gewünscht verarbeitet werden. Ob mit oder ohne KI… es dürfte klar sein, das der ChatGPT dabei kläglich versagt. Und man da selber ran muß.
Hilfreich?
0
ttwm
08.03.23
18:37
ThorsProvoni
… ich fand das als gutes Beispiel, wie man mit Hilfe einer KI bei einem konkreten Problem eine Lösung finden kann…
Ich behaupte mal, dass du noch nie mit AppleScript gearbeitet hast und deswegen nicht wissen kannst, dass AS - je nach Input, System- und Programm-Version - gerne mal Mist baut. Da hilft auch keine Standard-Programmierung einer KI, die das eben auch nicht weiß, sondern nur aus dem Lehrbuch zitiert.
Z. B. alleine die Tatsache, dass bei einigen Mails – definitiv mit beiliegendem PDF – in Mail in der Attachment-Spalte kein Icon für "Hier ist ein Attachment dran" angezeigt wird (Mail also selber behauptet, dass kein Attachment enthalten ist), zeigt doch, dass man mit AS hier ins Leere laufen muss.
Wenn Du nur Mails empfängst, wo alles in Ordnung ist, dann hast Du das für Dich sicherlich erfolgreich probiert - lässt aber keine Rückschlüsse auf den Rest der Welt zu. Und es ist definitiv auch kein Rückschluss, dass diese KI ein Problem erfolgreich lösen kann…
ThorsProvoni
…was Dir anscheinend vorher nicht gelungen ist.
Abgesehen davon, dass die KI auch nichts Neues in Sachen Programmierung beitragen konnte, was nicht in den Links vom TE auch schon stand (sofern man sie denn gelesen hat).
Hilfreich?
0
ThorsProvoni
18.03.23
09:28
ttwm
Ich behaupte mal, dass du noch nie mit AppleScript gearbeitet hast und deswegen nicht wissen kannst, dass AS - je nach Input, System- und Programm-Version - gerne mal Mist baut.
Na Du Schlaumeier, wenn Du hier der tolle erfahrene AppleScript Experte bist, dann frage ich mich warum Du keine Lösung vorschlägst?
Hilfreich?
0
MrChad
18.03.23
09:41
Dieser Thread ist erledigt.
Hilfreich?
0
marm
18.03.23
10:19
ThorsProvoni
Ob eine KI sinnvoll ist oder nicht oder ob man das benutzen soll oder nicht kann man gerne diskutieren, ich fand das als gutes Beispiel, wie man mit Hilfe einer KI bei einem konkreten Problem eine Lösung finden kann -
was Dir anscheinend vorher nicht gelungen ist.
Du hast den Link zur Lösung im Ausgangsbeitrag noch immer nicht gefunden?
Hilfreich?
-1
marode
18.03.23
10:36
ich würde mal sagen, das Problem liegt mit großer Wahrscheinlichkeit wie immer an Apple's extrem dilettantischen Mailclient, der vor Bugs nur so strotzt. Da man oft willkürlich, ohne ein Muster zu erkennen, Anlagen von bestimmten Nachrichten nicht auf die vorgesehene Art und Weise entfernen kann, wundert mich das Kernproblem in diesem Thread überhaupt nicht...anderes Thema: es war der Autor MrChad selbst, der das KI-Thema etwas ungeschickt aus einem Kommentar in den Fokus gerückt hat und deswegen jetzt nicht die beleidigte Leberwurst spielen sollte...
Hilfreich?
+1
ttwm
18.03.23
10:37
ThorsProvoni
Na Du Schlaumeier, wenn Du hier der tolle erfahrene AppleScript Experte bist, dann frage ich mich warum Du keine Lösung vorschlägst?
Ganz einfach: weil ich kein Ventura und kein Mail V16 zur Verfügung habe.
Hilfreich?
-1
Kommentieren
Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.