Граббер мыл из файлов

Тема в разделе "Статьи", создана пользователем Centr, 26 мар 2015.

  1. TopicStarter Overlay
    Centr

    Centr Команда форума

    Боевая Задача: выдрать из файлов мыльники.
    Дано: больше двух сотен файлов с мыльниками (.sql, .html, .txt …).
    Решение: Пробовал натравливать разный софт (не буду тыкать пальцем). Если база больше 50мб – софт не пашет. Не рассчитывали видать программисты, что такие большие файлы будут скармливать (даже не говорю про бд размером 4гб).

    На партсъезде было решено написать скриптенг для решения этой задачи.
    А вот и скрипт:
    Код:
    <?php 
    //Priv8 mail grabba 
    //Типа настройки - папка с дампами и имя файла с результатом 
    $dumps_dir = "/dumps/"; 
    $mails_file = "mails.txt"; 
     
    $files = scan_dir(__DIR__ . $dumps_dir); 
    foreach ($files as $file){ 
     if(is_file(__DIR__.$dumps_dir.$file)){ 
     $fh_dump = fopen(__DIR__.$dumps_dir.$file, "r"); 
     $i=0; 
     while($string = fgets($fh_dump,4096)){ 
     //strpos всяко быстрее регулярки 
     if(strpos($string,"@")){ 
     //регулярку можете и получше написать 
     if (preg_match_all("/\b([a-z0-9._-][email protected][a-z0-9.-]+\.[a-z0-9.-]{2,6}+)\b/i",$string,$match)){ 
     $fh_mails = fopen(__DIR__."/".$mails_file,"a+"); 
     foreach($match[0] as $mail){ 
     fwrite($fh_mails, $mail."\n"); 
     $i++; 
     } 
     fclose ($fh_mails); 
     } 
     } 
     } 
     echo "DUMP: $file GRABBED: ".$i."\n"; 
     fclose ($fh_dump); 
     } 
    }
    
    Для работы скрипта нужна папочка “dumps” (или как вы ее там назовете) в которую вы должны заботливо сложить все файлы, в которых есть мыльники. Запускаем из консольки.

    [+] Работает с любым количеством файлов и файлами любого размера.
    [+] Работает весьма шустро (собрано 27мб мыл за 5мин из 6.8гб)
    [+] Бекдоров нет. Ни с чем не склеено (100%).
    [-] Написано на php.
    [-] Нет удаления повторов.
    [-] Регулярка пашет как неопытный фейс-контрольщик – иногда пропускает говнище, лишь отдаленно похожее на мыло.
     
  2. Нихрена не понял как пользоваться. Мне нужно например с txt файла на компе вытащить только мыльники - получится?
     
  3. Простенькая многопоточная софтина для граббинга сервиса ответов мейлру;
     
  4. Еще бы выбор категории прикрутить....
     
  5. Спасибо, правда я нуп еще, не понял какие ответы она граббит, и какие мыла.... старинные, рандомные, новые, за последний промежуток времени или как.
     
  6. Спасибо за ПО.Буду тестировать
     
  7. Спасибо, давно искал ! сейчас проверю !
     
  8. Прога чёткая, только вот действительно, узнать бы старые это мыла или нет?
     
  9. Тоже вопрос интересует как проверить их на валидность.
     

Поделиться этой страницей