Как попасть в поток GET запросов по таймингу через Python?
Есть страница лайв события на сайте букмекерской конторы, которая обновляется каждую секунду.
Цель: запросы каждую секунду из Python -> приём обновлений коэффициентов и счёта из отклика.
GET запрос вида: https://liveupdate.bk.com/liveupdate/1234567 + константные заголовки и варьирующиеся параметры. Варьируются они по инструкциям из предыдущего заголовка ответа. Два параметра, "updated" и "_". Причём "_" просто шагает +1 а "updated" шагает плюс 1500-3000 пунктов.
Скопировал GET на старую ссылку со старыми параметрами - requests.get(url, headers=headers, params=params), в ответ соединение сброшено или сервер не принял запрос (точно не помню). Видимо умерла ссылка.
И как подцепить этот поток? Движение быстрое, каждую секунду смена параметров. Физически я не осилю подать запрос синхронно с сайтом :D
Посмотрите в исходники сайта. С вероятностью 99.9% браузер получает данные через вебсокет. В таком случае цепляетесь к этому же вебсокету, и данные появляются в приложении сами собой (push). Вот здесь я показывал кусок асинхронного кода по работе с вебсокетом (asyncio + websockets). Для тестирования вебсокета удобно пользоваться расширением Smart Websocket Client для Chrome.
Посмотреть вебсокет-трафик можно в стандартном Developer Tool'е (Shift+Ctrl+I):
Один вебсокет есть, отображает только изменения счёта игроков, но не коэффициентов. Способ удобный для считывания) Видимо такое удобство исключили по причинам конкуренции или сбора информации дата сайентистами.
Оказывается я неправильно запрашивал, отправлял запрос уже со включенными в ссылку параметрами + с заполненным аргументом params в get.) Можно и старые ссылки доставать с инфой, но не старше 1 минуты я так понял, ибо по информативным ссылкам 1,5-2 минутной давности уже ответ без реального содержания, только рефреш пейдж какой то.