tantosoft.com

PHP extractor de direcciones email Destacado

Aquí os dejo esta pieza de código para que podáis extraer las direcciones de email de todos los emails que hayais enviado o recibido desde vuestra cuenta IMAP. Con unos pequeños cambios en el fichero podréis extraer los emails de cualquier cuenta IMAP de cualquier proveedor. En este caso mi servidor www.papelmail.com es el host de la cuenta, pero lo podéis cambiar a imap.gmail.com o cualquier otro proveedor.

imap_extract.php:

<?php
$user = $argv[1];
$pass = $argv[2];
$imap = imap_open("{www.papelmail.com:993/imap/ssl/novalidate-cert}", $user, $pass );
$folders = imap_list($imap, "{www.papelmail.com:993/imap/ssl/novalidate-cert}", "*");
foreach ($folders as $folder) {
  $imap = imap_open($folder, $user, $pass);
  if($imap){
    echo $folder . "\n";
    $msgs = imap_sort($imap,SORTDATE,0);
    $numMessages = imap_num_msg($imap);
    foreach($msgs as $msg){
      $header = imap_header($imap, $msg);
      if(isset($header->from)){
        foreach($header->from as $from){
          if(isset($from->mailbox) && isset($from->host)){
            echo $from->mailbox . "@" . $from->host . "\n";
          }
        }
      }
      if(isset($header->to)){
        foreach($header->to as $to){
          if(isset($to->mailbox) && isset($to->host)){
            echo $to->mailbox . "@" . $to->host . "\n";
          }
        }
      }
      if(isset($header->reply_to)){
        foreach($header->reply_to as $from){
          if(isset($from->mailbox) && isset($from->host)){
            echo $from->mailbox . "@" . $from->host . "\n";
          }
        }
      }
    }
  }
  else echo "$folder does not open\n";
}
?>

Este fichero se ejecuta desde línea de comandos con php cli instalado:

php -f imap_extract.php Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. mypass > output_file.txt
sort output_file.txt | uniq > output_file_uniq.txt

Así al fiinal tenemos el fichero output_file_uniq.txt con todas las direcciones de emails sin repeticiones.

Quiere contactar con nosotros?

Envíenos un Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. o llámenos a (+34) 698 259 856