Applescript : parser le contenu d'un mail ?

  • Créateur du sujet Créateur du sujet alexh
  • Date de début Date de début

alexh

Membre actif
10 Juin 2003
135
0
Bonjour,

j'aimerais savoir deux choses :

1 / Existe-t-il des codes de parsers écrits en applescript et réutilisables ? Autant éviter de réinvter la roue si elle a déjà été écrite ...

2/ Comment exporter le contenu d'un message (intercepté via une règle de Mail) dans un buffer (enfin la structure adéquate) de texte (pour le parser ensuite) ?

Si quelqu'un pouvait m'aider, ça serait cool, j'ai vraiment du mal avec Applescript ... :mouais:
 
Il parlait de ça dans un AVosMAC* assez récent (3/4 mois) va demander sur leur forum, je les ai pas sous la main ;)

*c'est un magazine mac mais c'est pas ça que je voulais dire, c'est ça:
le script qu'ils proposent, c'est un script ou tu glisse un fichier dessus et il t'envoi le fichier a l'adresse indiquer dans le script (il me semble).
 
on s'est mal compris, c'est pas ça que je voulais faire

en fait je veux parcourir un source de mail html pour en extraire des infos pertinentes

j'ai pas mal progressé en Ascript en deux jours, j'aurai bientôt fini une première version, mais ce que c'est lennnnnnnttt. En fait le vrai problème de ce langage, c'est la docu ... :hein:

je me demande s'il n'y a pas moyen d'appeler un script perl depuis le script Apple ...
 
alexh a dit:
on s'est mal compris, c'est pas ça que je voulais faire

en fait je veux parcourir un source de mail html pour en extraire des infos pertinentes

j'ai pas mal progressé en Ascript en deux jours, j'aurai bientôt fini une première version, mais ce que c'est lennnnnnnttt. En fait le vrai problème de ce langage, c'est la docu ... :hein:

je me demande s'il n'y a pas moyen d'appeler un script perl depuis le script Apple ...

A priori je ne voit pas ce qui t'empeche via applescript d'ecrire:
do shell script "perl mycommand.pl"

Le probleme est plus de recuperer les parametres.

Tu devrait pouvoir faire :
set theResult to do shell script "perl mycommand.pl"

Ou, sinon, ecrire un fichier texte resultat avec ton Perl et le lire en AppleScript.

Sinon, je te rejoint sur tes critiques sur AppleScript c'est remarquablement mal foutu.

Je me suis mis au perl il y a à peut pres un mois, en trois jours j'était à l'aise.
En AppleScript, je pédale dans la semoule depuis deux ans dessus. Les langages qui se veulent trop intelligents, produisent souvent un résultat contraire.

Cordialement
 
c'est la solution que j'envisageais

je vais essayer le passage en argument des résultats du perl

ça fait un peu pauvre à côté du piping si génial d'unix mais bon :rateau:

sinon, c'est vrai qu'AS a des défauts, mais c'est essentiellement :
- la doc TOUTE POURRIE (encore que je commence à réussir à utiliser le Guide officiel d'Apple ; par contre pour les dictionnaires c'est pas gagné)
- la syntaxe "real language like" qui donne en effet un confort de lectures des codes, mais qui rend l'écriture assez tordue
- le grand nombre de façons différentes de faire la même chose
- la lenteur (c'est ignoblement lent ; mon parseur tout en AS met plusieurs minutes à parcourir un pauvre mail en html de 28ko, ce qui prendra surement moins de 3s en perl ...)

mais malgré ça, l'interfaçage avec l'OS est très sympa :heu:
 
alexh a dit:
c'est la solution que j'envisageais

je vais essayer le passage en argument des résultats du perl

ça fait un peu pauvre à côté du piping si génial d'unix mais bon :rateau:

sinon, c'est vrai qu'AS a des défauts, mais c'est essentiellement :
- la doc TOUTE POURRIE (encore que je commence à réussir à utiliser le Guide officiel d'Apple ; par contre pour les dictionnaires c'est pas gagné)
- la syntaxe "real language like" qui donne en effet un confort de lectures des codes, mais qui rend l'écriture assez tordue
- le grand nombre de façons différentes de faire la même chose
- la lenteur (c'est ignoblement lent ; mon parseur tout en AS met plusieurs minutes à parcourir un pauvre mail en html de 28ko, ce qui prendra surement moins de 3s en perl ...)

mais malgré ça, l'interfaçage avec l'OS est très sympa :heu:


Tu lance le script depuis l'editeur de script ou en version compilée ?

Cordialement
 
alexh a dit:
J'ai comparé les deux par curiosité et, surprise, les temps sont identiques ....

Si tu extrait des textes, verifie le type des données.
D'apres ce que j'ai vu si le type est unicode text, c'est plus lent que si c'est le type string.
Dans le doute fait:

set monText to monText as string



Cordialement
 
Dans le doute je vais éviter de faire les trucs un peu exigeants en calcul en applescript :mouais:

Le pire c'est que même VBA (qui n'est pourtant pas un modèle de vélocité) m'a fait aujourd'hui un parsing d'un fichier de plusieurs dizaines de méga octets en à peine 15 secondes (et encore j'ai codé le parsing bien salement)

je vais finalement adopter un passage par un outil unix (ce qui n'est in fine pas plus mal) :rolleyes:
 
Bonjour à tous :)

Heu, juste une petite question, histoire de comprendre ce que tu essais de faire, ça veut dire quoi "parser" ?

Comment t'y prends-tu ?

Merci :)
 
Didier Guillion a dit:
"Parser" cela veut dire lire les données d'un fichier et reconnaitre les differents champs de données et les extraire.

Par exemple, dans le cas d'un email, extraire nom de l'expediteur, sujet, corps du message, etc.
Ha Ok... ça veut dire ça... en somme, il s'agit de faire un "découpage" logique d'un contenu selon le rôle, ou l'importence, de chaque partie quil le compose, c'est ça ?

Bon, c'est plus claire maintenant, je me faisais des idées plus tordues... Merci Didier :)

;)