IPB

Bienvenue invité ( Connexion | Inscription )

> affichage des heures d'envoi des mails via AppleScript
Options
davdenice
posté 21 Oct 2022, 16:20
Message #1


Adepte de Macbidouille
*

Groupe : Membres
Messages : 130
Inscrit : 21 Jan 2007
Membre no 78 760



Bonjour,
Je cherche un script qui pourrait enregistrer tous les destinataires et les objets de mails écrits après 20h00 dans un fichiers .txt
Je bidouille un peu Applescript depuis peu, à part démarrer l'application Mail, je ne sais pas faire grand chose...
Merci pour votre aide.


--------------------
Ancien matériel  possedé : MacBook noir Core 2 Duo 2 gHz RAM 4GB HD 500GB, MacBook blanc Core 2 Duo 2,2 gHz RAM 4GB SSD 128GB, iPod Mini Alu 4GB, iPhone 3G Black 16GB, Elgato EyeTV, Elgato Turbo.264, iPhone 4 16GB , Phone 4S 16GB, iPhone SE 32GB, HD externe LaCie 120GB.

Actuellement toujours chez  : MacBook Air M1 8GB RAM 256GB SSD gris sidéral, iPad 9 64 GB gris sidéral, iPhone 11 64GB jaune, Apple Watch SE 2020, Apple TV 4K, SSD externe Crucial 1TB.
Go to the top of the page
 
+Quote Post
 
Start new topic
Réponse(s)
Zeltron54
posté 27 Oct 2022, 14:08
Message #2


Adepte de Macbidouille
*

Groupe : Membres
Messages : 184
Inscrit : 15 Mar 2008
Lieu : Lorraine
Membre no 110 156



Je t'ai réécris le script, en évitant de l'écrire ligne par ligne, mais en créant (comme PBell) un fichier "emails_envoyés.txt" sur le breau, puis en l'important dans numbers et le trier par date du plus récent au plus ancien si tu veux le contraire il faut remplacer "descending" par "ascending".
Ce script sera plus rapide.
Tu auras le fichier texte sur le bureau et une page dans numbers.

Code
display dialog "Nombre de jours pour la recherche ?" default answer "1095"
set MDate to (current date) - days * (text returned of result) -- défini hier comme date de recherche
display dialog "Début Heure de recherche ?" default answer "20"
set heurelimite to text returned of result
set monTexte to ""
set AppleScript's text item delimiters to {" "}

tell application "Mail"
    set maListe to (every message in sent mailbox whose date sent > MDate)
    repeat with unMessage in maListe
        set maDate to date sent of unMessage
        if hours of maDate ≥ heurelimite then
            set mesDestinataires to (address of recipients of unMessage) as rich text
            set Ladate to (short date string of maDate)
            set madatetexte to maDate as string
            set heure to last text item of madatetexte
            set lejour to text item 1 of madatetexte
            set objet to subject of unMessage
            
            set monTexte to monTexte & lejour & tab & Ladate & tab & heure & tab & objet & tab & mesDestinataires & tab & return
        end if
    end repeat
end tell

set Fichier_Log to (((path to desktop) as text) & "emails_envoyés.txt")
try
    do shell script "touch " & (quoted form of (POSIX path of Fichier_Log))
    do shell script "echo " & (quoted form of monTexte) & " >> " & (quoted form of (POSIX path of Fichier_Log))
end try
set chemin to (path to desktop folder as text) & "emails_envoyés.txt" as alias
tell application "Numbers"
    activate
    open chemin
    tell the first table of the active sheet of document 1
                set format of column "B" to date and time
        sort by column "b" direction descending --in rows LaSelection
    end tell
end tell

tell application "Finder"
    activate
    (display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell


Ce message a été modifié par Zeltron54 - 27 Oct 2022, 14:32.


--------------------
Imac 27 I7 Fusion drive fin 2013 Ram 8Go Mac OS X (10.14.6)
MacBook Pro 15 pouces mi-2012 8Go Ram Mac OS X (10.14.6)
Imac 24 M3 2023 Ram 24Go macOS Sequoia 15.6
Go to the top of the page
 
+Quote Post
davdenice
posté 27 Oct 2022, 16:33
Message #3


Adepte de Macbidouille
*

Groupe : Membres
Messages : 130
Inscrit : 21 Jan 2007
Membre no 78 760



Citation (Zeltron54 @ 27 Oct 2022, 15:08) *
Je t'ai réécris le script, en évitant de l'écrire ligne par ligne, mais en créant (comme PBell) un fichier "emails_envoyés.txt" sur le breau, puis en l'important dans numbers et le trier par date du plus récent au plus ancien si tu veux le contraire il faut remplacer "descending" par "ascending".
Ce script sera plus rapide.
Tu auras le fichier texte sur le bureau et une page dans numbers.

Code
display dialog "Nombre de jours pour la recherche ?" default answer "1095"
set MDate to (current date) - days * (text returned of result) -- défini hier comme date de recherche
display dialog "Début Heure de recherche ?" default answer "20"
set heurelimite to text returned of result
set monTexte to ""
set AppleScript's text item delimiters to {" "}

tell application "Mail"
    set maListe to (every message in sent mailbox whose date sent > MDate)
    repeat with unMessage in maListe
        set maDate to date sent of unMessage
        if hours of maDate ≥ heurelimite then
            set mesDestinataires to (address of recipients of unMessage) as rich text
            set Ladate to (short date string of maDate)
            set madatetexte to maDate as string
            set heure to last text item of madatetexte
            set lejour to text item 1 of madatetexte
            set objet to subject of unMessage
            
            set monTexte to monTexte & lejour & tab & Ladate & tab & heure & tab & objet & tab & mesDestinataires & tab & return
        end if
    end repeat
end tell

set Fichier_Log to (((path to desktop) as text) & "emails_envoyés.txt")
try
    do shell script "touch " & (quoted form of (POSIX path of Fichier_Log))
    do shell script "echo " & (quoted form of monTexte) & " >> " & (quoted form of (POSIX path of Fichier_Log))
end try
set chemin to (path to desktop folder as text) & "emails_envoyés.txt" as alias
tell application "Numbers"
    activate
    open chemin
    tell the first table of the active sheet of document 1
                set format of column "B" to date and time
        sort by column "b" direction descending --in rows LaSelection
    end tell
end tell

tell application "Finder"
    activate
    (display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell


Merci beaucoup pour ce script ! c'est top !
Là je télécharge 15 Go de mails, heureusement que j'ai la fibre, et hâte de tester tout ça !


--------------------
Ancien matériel  possedé : MacBook noir Core 2 Duo 2 gHz RAM 4GB HD 500GB, MacBook blanc Core 2 Duo 2,2 gHz RAM 4GB SSD 128GB, iPod Mini Alu 4GB, iPhone 3G Black 16GB, Elgato EyeTV, Elgato Turbo.264, iPhone 4 16GB , Phone 4S 16GB, iPhone SE 32GB, HD externe LaCie 120GB.

Actuellement toujours chez  : MacBook Air M1 8GB RAM 256GB SSD gris sidéral, iPad 9 64 GB gris sidéral, iPhone 11 64GB jaune, Apple Watch SE 2020, Apple TV 4K, SSD externe Crucial 1TB.
Go to the top of the page
 
+Quote Post

Les messages de ce sujet
- davdenice   affichage des heures d'envoi des mails via AppleScript   21 Oct 2022, 16:20
- - Zeltron54   Bonjour, Si J'ai bien compris tu veux extrair...   21 Oct 2022, 22:08
- - PBell   Bonjour, Zeltron est vraiement très rapide ! ...   22 Oct 2022, 08:17
- - davdenice   Merci pour vos réponses super rapides, je ne m...   22 Oct 2022, 08:47
- - Zeltron54   @PBell Bonjour, Ton script est bien plus sophis...   22 Oct 2022, 08:52
- - davdenice   Une petite question : où avez-vous appris à prog...   22 Oct 2022, 09:24
- - PBell   Bonjour Davdenice, Je suggère le site Apple (en a...   22 Oct 2022, 12:25
- - davdenice   Je suis désolé de vous embêter, mais quand je l...   22 Oct 2022, 13:02
- - PBell   Le lancement du script ouvre effectivement Mail, e...   22 Oct 2022, 13:18
|- - davdenice   Citation (PBell @ 22 Oct 2022, 14:18) Le ...   22 Oct 2022, 13:29
- - davdenice   comment faire pour sélectionner un compte email e...   22 Oct 2022, 14:25
- - davdenice   j'ai essayé : Codeset maListe to (every ...   22 Oct 2022, 14:47
- - PBell   QUOTE (davdenice @ 22 Oct 2022, 15:25) co...   22 Oct 2022, 17:57
- - davdenice   Hello, J'ai bien fait les modifications que ...   24 Oct 2022, 14:38
- - PBell   Bonjour, Il faut bien sûr remplacer "toto@fr...   24 Oct 2022, 14:46
- - davdenice   finalement j'ai pu trouver la boite de message...   24 Oct 2022, 15:01
- - davdenice   L'idéal serait de pouvoir traiter les mails d...   24 Oct 2022, 15:17
- - PBell   Bien: on progresse. La boite est donc "INBOX....   24 Oct 2022, 16:17
- - davdenice   Non, je n'ai aucun compte toto Le script a...   24 Oct 2022, 16:24
- - Zeltron54   Bonjour, Citation Autre question : Est-ce possibl...   24 Oct 2022, 16:55
- - davdenice   Merci pour ton aide. Alors je suis revenu sur la...   24 Oct 2022, 21:27
- - PBell   Bonjour, Lorsqu'on demande à Mail de retourne...   25 Oct 2022, 15:46
- - davdenice   Merci pour tes précieuses réponses. J'arri...   26 Oct 2022, 14:57
- - baron   Si je ne me trompe, une fois le document ouvert, t...   26 Oct 2022, 15:23
- - PBell   Merci Baron ! J'ajoute que, une fois le d...   26 Oct 2022, 17:26
- - davdenice   Merci pour votre aide à tous. Cependant j'a...   26 Oct 2022, 17:28
- - PBell   Une idée, juste comme ça, pourquoi ne pas suppri...   26 Oct 2022, 17:50
|- - davdenice   Citation (PBell @ 26 Oct 2022, 18:50) Une...   26 Oct 2022, 19:57
- - PBell   Curieux, cela fonctionne parfaitement chez moi, et...   27 Oct 2022, 08:45
- - davdenice   Alors j'utilise la version 16.66.1 d'Excel...   27 Oct 2022, 09:40
- - Zeltron54   Bonjour, Au vu de toutes tes demandes, j'ai fa...   27 Oct 2022, 09:48
|- - davdenice   Citation (Zeltron54 @ 27 Oct 2022, 10:48)...   27 Oct 2022, 10:52
- - Zeltron54   Ok pour l'affichage heure minute seconde voil�...   27 Oct 2022, 11:26
- - PBell   Merci pour la version Excel. J'ai effectivemen...   27 Oct 2022, 12:31
- - davdenice   Je ne sais quoi dire à part merci beaucoup pour t...   27 Oct 2022, 13:02
- - PBell   Pour le tri Excel, il semble que ici encore, Micro...   27 Oct 2022, 13:45
|- - davdenice   Citation (PBell @ 27 Oct 2022, 14:45) Pou...   27 Oct 2022, 15:56
- - Zeltron54   Je t'ai réécris le script, en évitant de l...   27 Oct 2022, 14:08
|- - davdenice   Citation (Zeltron54 @ 27 Oct 2022, 15:08)...   27 Oct 2022, 16:33
- - PBell   @ Zeltron, Juste une dernière précision pour la ...   27 Oct 2022, 17:39
- - Zeltron54   @ PBell Merci pour l'info "time string...   27 Oct 2022, 19:52
- - davdenice   Une dernière question : si je veux afficher non ...   27 Oct 2022, 20:00
- - Zeltron54   Bonsoir, J'ai ajouter dans le code l'affi...   27 Oct 2022, 20:57
- - davdenice   Hello, Pour le script qui affiche les messages d...   31 Oct 2022, 18:32
- - Zeltron54   Je ne vois pas ! Je viens de retester chez moi...   31 Oct 2022, 18:40
- - davdenice   Merci pour tes tests. J'ai essayé avec 4000 ...   31 Oct 2022, 20:00
- - Zeltron54   Pour le message d'erreur, Lorsque le script �...   31 Oct 2022, 20:43
- - davdenice   Bonjour, J'arrive à récupérer une feuille...   2 Nov 2022, 18:51
- - Zeltron54   Citation Est-ce possible d'écrire un script q...   2 Nov 2022, 20:23
|- - davdenice   Citation (Zeltron54 @ 2 Nov 2022, 20:23) ...   3 Nov 2022, 00:58
- - Zeltron54   Bonjour, Ok pour l'erreur ! Pour les fil...   3 Nov 2022, 07:51


Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 1st August 2025 - 06:59