если не там разместил перенесите в нужны раздел где этот пост увидят веб мастера: есть сайт где посредствам AJAX обновляются интерисующие меня значения ( курсы валют, погода, коэфициенты без рзницы ) ... тоесть сама страница статична без перезагрузки меняет какие то данные. Мне надо эти данные спарсить но не просто спарсить а постоянно получать актуальные значения. Естесственно, делать запрос на получение всей HTML страницы не резон, меня быстро вычислят забанят и на сервер ихний большая будет нагрузка. ПОдскажите как определить откуда сайт берет данные и как максимально верно эти данные перехватывать ну или парсить. Прошу воздержаться от постов в которых вы с умным видом укажите название проги, программок я сам знаю не мало, буду рад статье или детальному описанию методик. спасибо.
На самом деле перехватывать XHR и Fetch запросы довольно просто. Берём chromium, открываем DevTools, переходим на вкладку Network, включаем XHR. Загружаем страницу и смотрим как AJAX передаёт данные. Конечно они могут обмениваться через websocket, тогда вместо XHR включаем WS. Вряд ли разрабы будут обсфуцировать обмен данными между браузером и сервером. Так что смотрите разбирайтесь. После того как разобрались в принципах обмена данными, берёте в php http wrapper и моделируете обмен сообщениями, обратите внимание что может понадобится модификация HTTP request header, например указать Referer. PS: Есть ещё сложный вариант, реверснуть скрипты на сайте, вырезать получателей данных и запустить их на nodejs PPS: Но есть и лёгкий, при условии что сайт периодически обновляет на странице данные, сделать extension который внедрёным в страницу скриптом будет вытаскивать данные из html elements внутри которых эти данные помещаются. Всё это дело можно запустить в headless mode на серваке.
меня интерисуют букмейкеры ( любые) и там не все так просто... запросы в DevTools я вижу, но я не вижу там то, что мне интересно. можно с тобой обсудить это по телеге? чисто пара вопросов конкретных
Не видишь, потому что данные скорее всего в base64. Например laravel на бэкенде принимает Code: $payload = json_decode(base64_decode($payload), true); Пиши свою телегу в ПМ или найди ckpunmkug. Поговорим.