Здравствуйте! Есть на яндексе сервис по продаже автомобилей. У каждой марки есть модели, у каждой модели есть года выпуска. У каждого года выпуска своя средняя цена.
Задача: вытянуть среднюю цену на автомобиль с сайта auto.yandex.ru
Как делал я: через file_get_contents загружаю исходный код страницы, где есть средняя цена. С помощью регулярного выражения вырезаю цену.
Все работает, но если например, мне нужно узнать среднюю цену на 30 автомобилей, получается, что мой скрип грузит 30 страниц с яндекса, и яндекс блокирует. Если бы мы смотрели это в браузере, яндекс предложил бы нам ввести каптчу для дальнейшей работы. Я не знаю как делается эта блокировка - по IP я думаю. А как это обойти моему сценарию? Куда идти читать?
1. Itan - 06 Октября, 2016 - 09:48:56 - перейти к сообщению
2. Fart - 12 Октября, 2016 - 00:45:55 - перейти к сообщению
если ты получаешь в ответ блок ( ?!?!?! ): подозреваю, что стоит некая защита от спама (dos). я не рискну что-то утверждать: как именно ты сделал запрос и верно ли, что делает яндекс в ответ и прочее, но предположу, что стоит ограничение по коилчеству запрашиваемых страниц в сек.
а вот как обойти... запрашивай только ту страницу, к которой не будет "прилеплена" другая... но это, я скажу, тебе будет крайне сложно сделать
а вот как обойти... запрашивай только ту страницу, к которой не будет "прилеплена" другая... но это, я скажу, тебе будет крайне сложно сделать