Extraire des adresses email dans un gros fichier texte

Extraire des adresses email dans un gros fichier texte - HTML/CSS - Programmation

Marsh Posté le 15-09-2006 à 22:27:36    

Bonjour,
 
Dans une fichier texte de plusieurs milliers de pages, je voudrais extraire des adresses mail présentes.
 
Pour éviter de me "taper" toutes les pages à la main, je cherche soit un logiciel qui pourrait extraire les adresses mail, sachat qu'une adresse est généralement du type "adresse@fournisseur", soit une solution autre qui me permettrait donc de supprimer tout le texte et de ne garder que l'adresse.
 
Comment faire ?  

Reply

Marsh Posté le 15-09-2006 à 22:27:36   

Reply

Marsh Posté le 15-09-2006 à 23:26:51    

dans quel but ?


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 15-09-2006 à 23:30:43    

Le spamming et/ou fishing.  :D

Reply

Marsh Posté le 16-09-2006 à 15:50:40    

Non uniquement nettoyer ma base de donnée.
 
En fait il s'agit d'une mailing liste qui n'a jamais été mise à jour donc il y a beaucoup de déchet.
Les mauvaises adresses doivent ensuite être utilisées dans des requêtes SQL pour les supprimer.

Reply

Marsh Posté le 17-09-2006 à 11:05:08    

Peux-tu détailler le format du fichier texte ?
Comment sont enregistrées les données ?

Reply

Marsh Posté le 17-09-2006 à 18:31:51    

Les données sont dans un fichier texte ou (pour le fichier originel) au format .eml
 
Voici un exemple :

This is the SMTP Server program at host orange.fr.
 
I'm sorry to have to inform you that your message could not be
be delivered to one or more recipients. It's attached below.
 
For further assistance, please send mail to <postmaster>
 
If you do so, please include this problem report. You can
delete your own text from the attached returned message.
 
The SMTP Server program
 
<truc@hotmail.com>: delivery temporarily suspended: connect to
    mx1.hotmail.com[xx.54.244.8]: Connection timed out

Reply

Marsh Posté le 17-09-2006 à 18:37:40    

dexenium a écrit :

Les données sont dans un fichier texte ou (pour le fichier originel) au format .eml
 
Voici un exemple :

This is the SMTP Server program at host orange.fr.
 
I'm sorry to have to inform you that your message could not be
be delivered to one or more recipients. It's attached below.
 
For further assistance, please send mail to <postmaster>
 
If you do so, please include this problem report. You can
delete your own text from the attached returned message.
 
The SMTP Server program
 
<truc@hotmail.com>: delivery temporarily suspended: connect to
    mx1.hotmail.com[xx.54.244.8]: Connection timed out



Cela peut se faire en php.

Reply

Marsh Posté le 17-09-2006 à 20:38:29    

Voila la solution à ton problème en php :

Code :
  1. $chaine=file_get_contents('fichier.txt');
  2. $decoupage=explode('>', $chaine);
  3. $i=0;
  4. do{
  5. if(@strstr($decoupage[$i], '@')){
  6.  $decoupage2=explode('<', $decoupage[$i]);
  7.  echo $decoupage2[1]."<br />\n";
  8. }
  9. $i++;
  10. }
  11. while(@$decoupage[$i]);

Reply

Marsh Posté le 18-09-2006 à 09:34:09    

et un tableau monstrueux, un ... Enfin si ton fichier est vraiment gros.
Si c'est le cas, lis le ligne à ligne, et fais une regex dessus

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed