brand-zen.com
С нами с 17.12.02
Сообщения: 14357
Рейтинг: 2995
|
Добавлено: 17/09/05 в 03:21 |
посоветуйте как можно реализовать достаточно простую задачу, и в общем одноразовую..
есть файл - хтмл с реквизитами клиентов, из него нужно выбрать все клиентские мыла, обьем большой поэтому руками заебусь делать..
есть какой нить скрипт? или какая нить прога для этого?
или можт можно например экселевскими средствами это реализовать?
подскажите кто что может..плиз
рейтингу подкину  )
|
|
|
|
С нами с 09.02.05
Сообщения: 1482
Рейтинг: 1558
|
Добавлено: 17/09/05 в 05:18 |
a тебе их сопоставить надо как-то? например с именами... или просто получить сплошной список мыл?
|
|
|
|
С нами с 09.02.05
Сообщения: 1482
Рейтинг: 1558
|
Добавлено: 17/09/05 в 05:24 |
вообще если у тебя в хтмл все типа таблицы оформлено, то можно попытаться импортировать ее в эксел (выделяешь таблицу или ее часть в браузере+правый клик+экспорт) ... а там уже выделить эти мыла.. но это все зависит от того что конкретно ты хочешь в итоге получить и какова структура исходного файла...
если иначе, то можно скриптик небольшой на пхп, например, написать, который отпарсит файл и выберет мыла по соответствию с регулярным выражением, и сохранит их в отдельном файле... это буквально несколько строчек кода будет...
|
|
|
|
Genuine Quality
С нами с 28.08.05
Сообщения: 652
Рейтинг: 910
|
Добавлено: 17/09/05 в 09:58 |
если хошь, давай файл, я выберу тебе всё мыло из него. у меня уже парсер под хтмл готовый, пару строк кода написать
|
|
|
|
brand-zen.com
С нами с 17.12.02
Сообщения: 14357
Рейтинг: 2995
|
Добавлено: 17/09/05 в 12:38 |
Simple писал: | a тебе их сопоставить надо как-то? например с именами... или просто получить сплошной список мыл? |
мне не надо их сопоставлять ни с чем, просто надо сделать информационную рассылку по нашим клиентам...
|
|
|
|
С нами с 03.08.04
Сообщения: 129
Рейтинг: 263
|
Добавлено: 17/09/05 в 14:08 |
тут что-то выдалась минутка...
вариант 1...
грабим все адреса (и всё, что похоже на адрес), преобразуем в нижний регистр, предотвращяем дупликаты
входной файл - file.htm
выходной - emails.txt
Код: | <?php
$file = "file.htm";
$text = join('', file($file));
$emails = array();
if (preg_match_all("!\b[\w_-]+@[\w.-]{2,}\.[A-Za-z]{2,4}\b!si", $text, $matches))
{
for ($i=0; $i<sizeof($matches[0]); $i++)
{
$item = strtolower($matches[0][$i]);
if (!in_array($item, $emails)) $emails[]=$item;
}
}
$fp = fopen("emails.txt", "w");
fputs($fp, join("\n", $emails) . "\n");
fclose($fp);
?> |
|
|
|
|
С нами с 03.08.04
Сообщения: 129
Рейтинг: 263
|
Добавлено: 17/09/05 в 14:10 |
вариант 2...
грабим адреса... всё точно так же без дупликатов..
затем сортируем - сначала по той строке, что после собачки, затем по той, что до
таким образом получаем сортировку по домену, затем по логину
Код: | <?php
$file = "file.htm";
$text = join('', file($file));
$emails = array();
if (preg_match_all("!\b[\w_-]+@[\w.-]{2,}\.[A-Za-z]{2,4}\b!si", $text, $matches))
{
for ($i=0; $i<sizeof($matches[0]); $i++)
{
$item = strtolower($matches[0][$i]);
if (!in_array($item, $emails)) $emails[]=$item;
}
usort($emails, "cmp");
}
$fp = fopen("emails.txt", "w");
fputs($fp, join("\n", $emails) . "\n");
fclose($fp);
function cmp($a, $b)
{
if($a == $b) return 0;
list($a1, $a2) = explode('@', $a, 2);
list($b1, $b2) = explode('@', $b, 2);
if ($r1 = strcmp($a2, $b2)) return $r1;
return strcmp($a1, $b1);
}
?> |
|
|
|
|
С нами с 03.08.04
Сообщения: 129
Рейтинг: 263
|
Добавлено: 17/09/05 в 14:11 |
выходной файл emails.txt содержит адреса по одному на строку
для работы положить файл.php рядом с файлом file.htm, у скрипта должны быть права на запись в emails.txt, либо на создание его
|
|
|
|
brand-zen.com
С нами с 17.12.02
Сообщения: 14357
Рейтинг: 2995
|
Добавлено: 17/09/05 в 16:50 |
bjim: нет слов  )
спасибо  заценил по максимум
|
|
|
|