![]() |
Bienvenue invité ( Connexion | Inscription )
![]() |
![]()
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. |
|
|
![]() |
![]()
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 |
|
|
![]()
Message
#3
|
|
![]() Adepte de Macbidouille ![]() Groupe : Membres Messages : 130 Inscrit : 21 Jan 2007 Membre no 78 760 ![]() |
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. |
|
|
![]() ![]() |
Nous sommes le : 1st August 2025 - 06:59 |