Forum Programmation.shell validation d'email

Posté par  .
Étiquettes : aucune
0
26
sept.
2008
Bonjour,

je cherche à vérifier des adresses emails par un script comme celui-ci: http://www.yellowpipe.com/yis/tools/email-validator/verify_e(...)
mais en shell ce serait plus pratique pour tout faire d'un coup.

Le script doit faire tout ça: To validate an address it verifies the format, check for forbidden characters, make sure the domain name is valid, and verify that the user and mailbox really exist.

Pensez-vous que cela existe déjà?

Merci.
  • # a mon avis, ca n'existe pas

    Posté par  (site web personnel) . Évalué à 6.

    Les deux premiers points, c'est possible, il s'agit d'un seul d'après moi, mais bon.
    Le troisième, vérifier l'existence du domaine, OK (host peut le faire)
    Le quatrième point, ce n'est à mon avis pas possible (que ce soit en shell ou autre chose) sauf à envoyer un mail pour tester*.

    Corrolaire : l'outil en ligne ne marche pas.
    Preuve : il se vautre en annonçant comme invalide une adresse que je sais valide.

    * : et tu ne veux pas envoyer des mails automatiques, d'autant qu'avec le greylisting, ton outil ne pourra pas répondre avec assurance en moins de trente minutes, et je ne parle pas des tueurs de spam...
    • [^] # Re: a mon avis, ca n'existe pas

      Posté par  . Évalué à 2.

      > Le quatrième point, ce n'est à mon avis pas possible (que ce soit en shell ou autre chose) sauf à envoyer un mail pour tester

      bon alors en théorie, tu peux causer SMTP au serveur en face, et utiliser des commandes comme EXPN qui liste les adresses ou VRFY qui te dit si une adresse existe bel et bien, sauf que...

      ...depuis que le spam est un problème, on désactive ces commandes SMTP :)
  • # regexp

    Posté par  . Évalué à 1.

    J'ai lu récemment (mais ou bon sang) un truc sur les expressions régulières pour tester les adresses courriels.

    De tête l'article / billet disait qu'il y avait des expressions régulière de quelques kilooctets qui arrivaient à accepter la quasi totalité des adresses conformes aux RFC. (chercher sur google) Il y aura probablement des faux positifs et des faux négatifs de toute façon.

    Pas plus tard qu'aujourd'hui, j'ai mis un lien mailto dans un courriel rédigé sous gmail. Gmail m'affirmait que l'adresse était invalide quand je mettais un subject. Et pourtant je pense que chez google ils doivent en connaitre un minimum sur le sujet !

    Quand à dire que l'adresse existe, c'est impossible sans tester.
    (sauf à obtenir de tous les gestionnaires de domaine une extraction régulière de leur bases :))

    Je pense qu'il faut étudier le problème autrement :
    - un test basique pour rejeter ce qui est manifestement aberrant (relire les RFC avant :) )
    - un envoi de mail avec lien de validation pour confirmation.

    Après tout, ce n'est pas un hasard si tout le monde fait comme cela !
    • [^] # Re: regexp

      Posté par  (site web personnel) . Évalué à 4.

      > J'ai lu récemment (mais ou bon sang) un truc sur les expressions régulières pour tester les adresses courriels.

      Ici http://www.regular-expressions.info/email.html peut-être ? Vers la fin de l'article se trouve une regex qui matche toutes les adresses acceptables d'après la rfc correspondante. Mais elle fait juste une ligne un peu longue.
      • [^] # Re: regexp

        Posté par  (site web personnel) . Évalué à 1.

        Vers la fin du livre de Jeffrey Friedl sur les expressions régulières, on peut contempler « la mère de toutes les regexps », reconnaissant une adresse en 6598 octets --- j'ai un peu la flemme de la recopier, elle n'est peut-être pas à jour.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.