ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Cкрипт для отсеивания мыл
  #1  
Старый 01.09.2007, 15:57
Аватар для Lancellot
Lancellot
Участник форума
Регистрация: 09.08.2006
Сообщений: 157
Провел на форуме:
1583810

Репутация: 56
По умолчанию Cкрипт для отсеивания мыл

ку
встеретился с такй проблемой, есть тхт файл в нём станицы в которых мыла .не подскажете скрипт желательно на перле для отсеивания мыл с страниц типа парсера,может я не внимательно искал но вроди не нашол на форуме)
спс
 
Ответить с цитированием

  #2  
Старый 01.09.2007, 15:58
Аватар для Piflit
Piflit
Banned
Регистрация: 11.08.2006
Сообщений: 1,522
Провел на форуме:
5128756

Репутация: 2032


Отправить сообщение для Piflit с помощью ICQ
По умолчанию

 
Ответить с цитированием

  #3  
Старый 01.09.2007, 16:01
Аватар для Lancellot
Lancellot
Участник форума
Регистрация: 09.08.2006
Сообщений: 157
Провел на форуме:
1583810

Репутация: 56
По умолчанию

что-то невразумительное ))
а по просче есть?хотя идея ясна
 
Ответить с цитированием

  #4  
Старый 01.09.2007, 16:38
Аватар для n1†R0x
n1†R0x
Постоянный
Регистрация: 20.01.2007
Сообщений: 787
Провел на форуме:
2924346

Репутация: 1719


Отправить сообщение для n1†R0x с помощью ICQ
По умолчанию

Написал небольшой скрипт, по-прежнему не работает с двойными доменами (user@company.net.ua), но с обычными вроде норм, протестируйте плз)

PHP код:
<?php
    
if (!isset($fname))
    {
        print 
"<form method='post'>Plz print the filename:<br/><input type='text' name='fname' length='15' maxlength='20'/><br/>";
        print 
"<input type='submit' name='go' value='go'></form><br/><br/>";
    }
    else
    {
        
$i=0;
        
$fname $_POST['fname'];
        
$error "Cannot open file $fname. <br> <a href='javascript:history.go(-1);'>Get Back</a>";
        
$file file_get_contents($fname) or die ($error);
        
$pattern "/([a-z_-]+@([a-z][a-z-]*\.)+([a-z]{3}|ru|com|net|org|gov|edu|mil|info|biz|cc|net.ua|com.ua|org.ua|org.ru|com.ru|net.ru|spb.ru))/im";
        
preg_match_all($pattern$file$ok);
        while (@
$ok[0][$i])
        {
            print 
$ok[0][$i]."<br>";
            
$i++;
        }
    }
?>
 
Ответить с цитированием

  #5  
Старый 01.09.2007, 19:51
Аватар для Ch3ck
Ch3ck
Познавший АНТИЧАТ
Регистрация: 09.06.2006
Сообщений: 1,359
Провел на форуме:
5301021

Репутация: 1879


По умолчанию

Дети мои...
PHP код:
preg_match("|[-0-9a-z_\.]+@[-0-9a-z_^\.]+\.[a-z]{2,6}|i"$email$out);
  echo 
$out[0]; 
 
Ответить с цитированием

  #6  
Старый 01.09.2007, 19:52
Аватар для ant0ha
ant0ha
Участник форума
Регистрация: 22.05.2007
Сообщений: 144
Провел на форуме:
306311

Репутация: 119
По умолчанию

эффективнее же искать до первого пробела или переноса строки до и после собаки, и тогда не будет проблем с двойными и более доменами
 
Ответить с цитированием

  #7  
Старый 02.09.2007, 00:31
Аватар для n1†R0x
n1†R0x
Постоянный
Регистрация: 20.01.2007
Сообщений: 787
Провел на форуме:
2924346

Репутация: 1719


Отправить сообщение для n1†R0x с помощью ICQ
По умолчанию

Цитата:
Сообщение от ant0ha  
эффективнее же искать до первого пробела или переноса строки до и после собаки, и тогда не будет проблем с двойными и более доменами
тоже не лучший вариант)
представь себе, что мыла, предположим, в таком формате:

PHP код:
<a href='mailto:blablabla'>email</a><br
у меня в мыслях только 2 варианта: чтение до символа, не входящего в диапазон буквы_цифры, либо чтение до последней точки.. как реализовать второе - не знаю
 
Ответить с цитированием

  #8  
Старый 02.09.2007, 00:57
Аватар для Underwit
Underwit
Banned
Регистрация: 06.10.2006
Сообщений: 288
Провел на форуме:
2741921

Репутация: 469
По умолчанию

вот тут глянь http://forum.antichat.ru/showpost.php?p=290912&postcount=44

а вот на перле от Genom

PHP код:
#!/usr/bin/perl

if (@ARGV==0) { print "\n###########Genom Spam List Bilder v1.3##################\n\nUse: perl spam-bilder.pl /start_folder/\n"; exit;};

$asd=@ARGV[0]; 
$i=0;
$a=1;
@
dir[0]=@ARGV[0];
opendir FF$asd;
while (
$zz=readdir FF) {
$aa=$zz=~m/\./;
 if (
$aa==0) {if ($asd=="/") {@dir[$i]="$asd$zz";$i++;}else{@dir[$i]="$asd/$zz";$i++;} }  
closedir dir;}

papki(@dir[$a]);
for 
$qq (@dir){print "$qq\n"}; # убери в начале решетку если хочешь чтобы выводились найденные папки

##################рекурсивная функция которая забивает пути к папкам в массив @dir ##################
sub papki {
opendir FF,@dir[$a];
while (
$zz=readdir FF) {
$aa=$zz=~m/\./;
 if (
$aa==0) {@dir[$i]="@dir[$a]/$zz";$i++;}  };
closedir dir;$a=$a+1;

if (
$a<$i) {papki(@dir[$a]);}
};@
dir[$a];
###########################функция поиска файлов################

# получаем имена всех файлов в обнаруженных папках и заносим их в массив @file
# под категорию файлов подпадают объекты в именах которых есть точка--- так что некоторые папки может 
# не обработать(то есть признает их файлами)- это связано с тем что пишу под виндой и параметры 
# распознования файлов линукса -e и -f у меня почемуто не работают =( ---
$xy=0;

for 
$qqq (@dir){
opendir FF$qqq;
while (
$zz=readdir FF) {
if (
length($zz)>2) {
$aa=$zz=~m/\./;
 if (
$aa==1)  {@file[$xy]="$qqq/$zz";$xy++;} }
closedir dir;}
};
for 
$wer (@file){print "$wer\n"};# убери в начале решетку если хочешь чтобы выводились найденные 
# файлы 

######## функция выдирания из найденных фалов e-mail адресов

open mail,">new-mail.txt";

for 
$syka (@file){
open piska"<$syka";
while (
$zzaa=<piska>)
{if (
$zzaa =~m/\b([\w\d]+\@[\w\d]+\.[\w\d\.]+)\b/g) { $list{"$1"}="";}}}
 


$,=
"\n";
print 
mail keys %list;
close mail
 
Ответить с цитированием

  #9  
Старый 02.09.2007, 02:19
Аватар для C!klodoL
C!klodoL
Постоянный
Регистрация: 05.06.2007
Сообщений: 335
Провел на форуме:
4319431

Репутация: 677
По умолчанию

мыло отделено от остального хтмл пробелами или <, если оно там еще чем то может быть отделено, то этот символ надо вставить в [ |>] через |
#!/usr/bin/perl

open (html, '<file.txt');
open (mila, '>mila.txt');
while (<html>) {
if ($_ =~ /[ |>](.+@.+.\w+)[ |<]/gi) {
print mila "$1\n";
}
}
close html;
close mila;

Последний раз редактировалось C!klodoL; 02.09.2007 в 03:14..
 
Ответить с цитированием

  #10  
Старый 02.09.2007, 10:02
Аватар для ant0ha
ant0ha
Участник форума
Регистрация: 22.05.2007
Сообщений: 144
Провел на форуме:
306311

Репутация: 119
По умолчанию

тоже довольнотаки часто встречается:

&nbsp;mail@site.ru&nbsp;
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Софт для мобильных телефонов под *nix Grrl Сотовый фрикинг 2 02.03.2007 01:47
Программы для работы с железом. Часть 2 – материнские платы _GaLs_ Аппаратное обеспечение 0 19.11.2006 12:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ