Я хотел бы описать некоторые методы по написанию процессора для входящей почты. Мне пришлось использовать такую манипуляцию, чтобы Парсить электронную почту получено из различных источников. Это может быть полезно для написания собственной системы фильтрации спама, автоответчик или билетная система для приема заявок по электронной почте.
Для реализации алгоритма парсера электронной почты нам понадобится
- Подключение и вход в систему на почтовом сервере
- Подсчитайте количество входящих писем
- получение электронной почты с сервера по протоколу POP3
- Обрабатываем заголовки и тело письма и производим парсинг
- … осуществлять любые дополнительные действия
Хорошо, Есть вполне конкретная задача для Верстка на PHP, Поэтому нам нужен хостинг, поддерживающий внешнее подключение. Я не предлагаю писать решение целиком, потому что многое уже осознано талантливыми программистами. Например, Вы можете взять готовый модуль, который позволит принимать электронную почту с удаленного сервера.
Спасибо Мануэлю Лемосу и его модулю (Класс php) который назвал pop3.php.
Подключение этого класса к коду, Вам просто нужно использовать команду include или require: нуждаться(“pop3.php”);
require("pop3.php"); $hostname = 'pop3.mail.com'; $port = '110'; $user = 'pop3-username'; $accesscode = 'pop3-password'; // Create the class connection $pop3_connection=new pop3_class; // Specify the hostname $pop3_connection->имя хозяина=$hostname; $result=$pop3_connection->Open(); // We are trying to open connection and display the result echo $result; // Trying to logon and display the error if any appear $error=$pop3_connection->Login($пользователь,$Код доступа,$апоп); Если ($Ошибка<>'Password error: Ошибка входа в систему: unknown user name or bad password.') {Эхо $error; выход;} // Now get the statistic how many emails are stored and the size of them $result=$pop3_connection->Statistics($сообщения, $размер); Эхо "$hostname содержит $сообщения из $размер Байт."; //..... Там мы можем получать электронные письма в цикле и разбирать их.... // // Если делать нечего - we can close the connection $error=$pop3_connection->Close(); // Эхо $error; ?>
Теперь мы знаем, как подключиться к серверу POP3 и войти в него, а также как запросить количество входящих писем и их размер. Next, Мы должны получить каждое письмо и разобрать заголовки и массив тела.
ПРОДОЛЖЕНИЕ СЛЕДУЕТ
Прекрасно, которая работает, Что теперь? Как получить электронное письмо? Как написать парсер электронной почты? Продолжите, пожалуйста, Отличный пост!
Фантастическая почта. Я прочитал много постов на эту тему и вы проделали лучшую работу. Продолжайте в том же духе!
Вы не можете поверить, как долго я гуглил из-за этого. Через семь страниц результатов Digg так ничего и не найдя. 1 поиск на MSN. Вот это… Нужно начать использовать это чаще ebrantley@kc.rr.com