PHP парсер, простенький

Евгений15 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
26.01.2012

Необходимо создать парсер на php. Запускаться он будет через cron.

файлы для парсинга: http://sergey-mavrodi.com/wineletters/?p_pos=0

1. на mssql создать таблицу вида:

"дата выигрыша" - win_date - текстовое поле

"текст письма" - win_text - текстовое поле

win_posted - boolean (true or false)

в исходном файле есть 30-50 писем о выигрышах. Отформатированиы они обинаково, выглядят следующим образом:

"

От:     Антон Липский ...@gmail.com

Кому    [email protected]

Дата   20 января 2012 г., 18:39

Тема    ВЫИГРЫШ


Здравствуйте.

  Я сотник из г.Луганска.

Получил руководительские 3470грн.

  Спасибо системе.

 

"

находим по очереди каждое такое письмо и:

1. выдергиваем из него текст вида:

"От:     Антон Липский ...@gmail.com

Кому    [email protected]

Дата   20 января 2012 г., 18:39
"

в БД ищем соответствие поля win_date этому тексту. Если такая запись уже есть цикл прекращает свою работу

Иначе:

1. преобразуем исходный текст к виду:

От:     Антон Липский ...@gmail.com

Кому    [email protected]

Дата   20 января 2012 г., 18:39

Тема    ВЫИГРЫШ

    

Здравствуйте.

  Я сотник из г.Луганска.

Получил руководительские 3470грн.

  Спасибо системе.

 

заносим в БД. поле win_posted=false;

2. Если найденные записи закончились, переходим к файлу http://sergey-mavrodi.com/wineletters/?p_pos=1 и парсим его.

Последний файл p_pos=20

Далее работаем с таблицей БД.

Выбираем все записи где win_posted=false;

Если их меньше 10 скрипт прекращает свою работу.

Иначе выбираем 10 таких записей в БД и создаем текстовый файл this date_time.txt вида:

"win_text 1"

.....

win_text 10"

в бд для всех записей, что разместили в файле isposted=true.

Файлы создаются циклически по 10 записей в каждом пока записей с win_posted=false не останется менее 10

Всё!!!

Заявки фрилансеров