Фрилансеры предложат решение вашей задачи уже через несколько минут!

Публикация заказа на фриланс бирже не займет много времени.

8 лет назад
Евгений Январский
37 лет, Россия
9 лет в сервисе
Был онлайн 6 лет назад
8 лет назад

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

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

1. на mssql создать таблицу вида:
"дата выигрыша" - win_date - текстовое поле
"текст письма" - win_text - текстовое поле
win_posted - boolean (true or false)

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

"<div style="background-color: white;">

От: &nbsp;&nbsp; &nbsp;Антон Липский ...@gmail.com<br />

Кому&nbsp;&nbsp; &nbsp;sergeymavrodi42@gmail.com<br />

Дата&nbsp;&nbsp;&nbsp;20 января 2012 г., 18:39<br />

Тема&nbsp;&nbsp; &nbsp;ВЫИГРЫШ<br />

<br />

Здравствуйте.<br />

&nbsp; Я сотник из г.Луганска.<br />

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

&nbsp; Спасибо системе.

<p>

&nbsp;</p>

</div>
"

находим по очереди каждое такое письмо и:
1. выдергиваем из него текст вида:

"От: &nbsp;&nbsp; &nbsp;Антон Липский ...@gmail.com<br />

Кому&nbsp;&nbsp; &nbsp;sergeymavrodi42@gmail.com<br />

Дата&nbsp;&nbsp;&nbsp;20 января 2012 г., 18:39<br />"

в БД ищем соответствие поля win_date этому тексту. Если такая запись уже есть цикл прекращает свою работу
Иначе:
1. преобразуем исходный текст к виду:
<div id="container">
<h2> От: &nbsp;&nbsp; &nbsp;Антон Липский ...@gmail.com<br />

Кому&nbsp;&nbsp; &nbsp;sergeymavrodi42@gmail.com<br />

Дата&nbsp;&nbsp;&nbsp;20 января 2012 г., 18:39<br />
Тема&nbsp;&nbsp; &nbsp;ВЫИГРЫШ<br />
&nbsp;&nbsp; &nbsp;<br />
</h2>
<div class="block">
Здравствуйте.<br />

&nbsp; Я сотник из г.Луганска.<br />

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

&nbsp; Спасибо системе.
<p>

&nbsp;</p>

</div>
</div>

заносим в БД. поле 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

Всё!!!

Выбранный исполнитель
Павло Довгань
29 лет, Украина
9 лет в сервисе
Был онлайн 3 года назад
8 лет назад

$5

1 день

Отзыв заказчика
Очень доволен сотрудничеством. Если честно был шокирован ценой, слишком маленькой она мне кажется. Не смотря на мизерную цену идеально функционирующий скрипт был сделан исполнителем очень быстро! Оказывается 3 несовместимых понятия - быстро? дешево и качественно СОВМЕСТИМЫ!!!
Отзыв фрилансера
Отличный заказчик, все вовремя, быстро, четко....никаких задержек, трудностей, легко нашли общий язык!
Евгений Д.
Евгений Д. 
29 лет, Россия
8 лет в сервисе
Был онлайн 9 месяцев назад
8 лет назад
Павло Довгань
29 лет, Украина
9 лет в сервисе
Был онлайн 3 года назад
8 лет назад
Анатолий А.
28 лет, Молдова
11 лет в сервисе
Был онлайн 6 лет назад
8 лет назад
Сергей В.
24 года, Россия
9 лет в сервисе
Был онлайн 5 дней назад
8 лет назад

Другие заказы в категории «Веб-программирование»