Всем доброго времени суток!
Маленькое вступление, в котором я постараюсь вкратце пояснить суть проблемы.
Один мой друг попросил меня написать программу для поиска новых предложений подержанных машин на самом крупной немецкой бирже подержанных автомобилей (www.mobile.de)
Ну я её написал и чтобы правильно сформулировать суть проблемы, я постараюсь вкратце описать работу программы:
Пользователь запускает программу и воодит поисковую маску (год, цена, марка и т.д, аналогично как и на mobile.de). После этого пользователь нажимает на "поиск", генерируется урлка и посылается через GET запрос на mobile.de
Сервер mobile.de возвращает sourcecode веб-страницы с результатами поиска. Это может быть как и одна страница, так и несколько страниц, если кол-во найденных результатов больше 20 (20 объявлений на одной странице).
Затем программа заносит все находящиеся на странице предложения в .txt файл - эти объявления являются старыми и не представляют интереса. Заносятся они по id номеру, который является идентификатором каждой машины.
Далее следует самое важное!
Каждые 2 секунды программа высылает новый GET запрос на сервер mobile.de с этой же урлкой и сравнивает кол-во найденных машин со старым кол-вом машин, найденым 2 сек назад.
Если кол-во машин с последнего запроса превышает кол-во машин предыдущего запроса - это значит что поступило новое объявление и его нужно найти.
Программа стартует функцию сравнения которая один за одним сравнивает результаты на веб-странице, с результатами в .txt файле. Если один или несколько результатов в файле не найдено, значит они новые и выводятся на экран пользователю. Кликнув на выводимый результат, пользователь попадает сразу на веб-странице нового объявления на сервере mobile.de и получает подробную информация об автомобиле.
Проблема заключается в том, что если результаты умещаются на одной странице, то поиск осуществляется довольно быстро, но если результаты поиска выводятся на нескольких страницах и более, то поиск может продолжаться до 30 сек и более.
Основное время уходит на запрашивание следующих страниц с результатами поиска.
Несколько дней назад, я столкнулся с подобной программой которую написал один мой знакомый.
Его программа находит новые предложения в течении трёх секунд, независимо от кол-ва найденных автомобилей и следовательно веб-страниц. И это всё без какого-либо сравнения, БД или txt файлов. Стало быть, он написал какой-то СУПЕР алгоритм, который направляет его сразу на новые результаты ведь в течении трёх секунд невозможно запросить 25 страниц, отфильтровать результаты и найты новые автомобили.
Вполне возможно что он использует какую-то скрытую функцию на сервере mobile.de которая его направляет на новые результаты.
Я очень внимательно копался в этой веб-странице пытаясь найти хоть что-то на чём может основываться этот чудо-алгоритм. Поэтому мне нужна помощь, естественно не бесплатно, разобраться в этой странице и создать подабный алгоритм.
Буду благодарен за любую помощь в решении моей проблемы, а также гарантирую вознаграждение в пределах разумного!
Заранее спасибо <!--emo&:rolleyes:--><!--endemo-->