Как достать данные из приложения?

Есть приложение, которое показывает таксистам какой коэффициент спроса в нужной точке карты (https://t.me/radar_kefa/19). введите сюда описание изображения

Я учусь программировать на java и хотел сделать программку для аналитики цен в своем городе и хотел брать данные с этой программы. Вопрос, как мне можно получать в удобном виде значение кэфов с нее? Спрашивая у поддержки, есть ли какой то доступ к api, серверу или чему-то такому (не знаю как это работает) меня естественно отфутболили) Может есть опытные люди которые могут подсказать или предложить иной путь и брать как то цены с самого яндекс.го. Пока что из идей только если захватывать скриншот экрана приложения каждую минуту, считывать значение со скриншота и звучит это крайне неудобно и костыльно?


Ответы (1 шт):

Автор решения: Стас

В общем, я поймал трафик из этого приложения. Запросы оно шлет сюда:

http://89.108.115.243:8080/radar-gps?latitude=55.79665&longitude=37.9699

В качестве параметров нужно установить место, где требуется "запустить радар".


Ответ приходит в таком виде (ну, разве что, без форматирования):

[
   {
      "userName":"не установлен",
      "kaf":"{'city': 'balashiha', 'comfort+': '220', 'premier': '0', 'express': '110', 'error': '0', 'maybach': '0', 'comfort': '230', 'special': '0', 'children': '240', 'courier': 'x2.4', 'today': '140', 'cruise': '0', 'econom': '240', 'vip': '100', 'cargo': '80', 'minivan': '0', 'ldrive': '0'}",
      "latitude":55.8201,
      "longitude":37.8801,
      "userIndeficator":3912558356139741531,
      "view":true
   },
   ...
]

Если честно, я так и не смог соотнести эти данные с показаниями приложения. Все-таки я не знаком с темой такси. Но выглядит довольно похоже на то, что у вас на картинке.


Здесь есть еще кое-что, можете поиграться. Видимо это внутренняя штука для приложения яндекс такси, документации я на нее не нашел. Остаётся разбираться "методом тыка". Запрос вот сюда

https://tc.taxi.yandex.net/3.0/routestats

вот такого вида:

POST /3.0/routestats HTTP/2
Host: tc.taxi.yandex.net
User-Agent: yandex-taxi/4.112.0.123017 Android/9 (Android 11; RMX3261)
Accept-Language: ru-RU
Accept-Encoding: gzip, deflate, br
X-User-Agent-Split: yandex-taxi 4.112.0 (50123017)
Content-Type: application/json; charset=utf-8
Content-Length: 263

{
  "is_lightweight": false,
  "extended_description": true,
  "route": [
    [
      37.65652847290039,
      55.75739669799805
    ],
    [
      37.65652847290039,
      55.75739669799805
    ]
  ],
  "selected_class":"econom",
  "selected_class_only": false
}

Если заинтересует, вот здесь можно поэкспериментировать с ним: postman

→ Ссылка