Запустили цены на топливо по миру — и калькулятор маршрута на их основе
Планируешь маршрут через четыре страны и пытаешься прикинуть, во сколько встанет топливо. Открываешь один сайт по Грузии, другой по Турции, третий по Греции — везде разная валюта, разные единицы, и нигде не понятно, сколько это будет на твой бак. Чтобы это перестало повторяться, мы запустили раздел с ценами на топливо по 100+ странам и собрали поверх него калькулятор маршрута.
Два месяца назад мы хотели посчитать стоимость топлива на поездку через несколько стран и поняли, что такого инструмента нет ни на одном сайте. Где-то есть цены по одной стране, где-то агрегатор без единиц, где-то таблица годовой давности. Сели и сделали свой.
Сто стран, одна таблица, любая валюта
Раз в неделю редакция OpenVan.camp обходит официальные источники — министерства, статистические агентства, локальные агрегаторы АЗС. В базе 14 фетчеров по 100+ странам: собираются цены на бензин и дизель, считается взвешенное среднее по нескольким источникам и кладётся в админку. Дальше редактор вручную сверяет выгрузку и публикует — никакого автокоммита данных, потому что один сбитый парсер испортит всю таблицу. Так уже несколько раз ловили битые цены до того, как они попали на сайт.
На странице страны цены показаны в любой валюте, рядом — сколько обойдётся 100 км и полный бак под твою машину, график изменения за последние месяцы и виджет «где топливо дешевле всего» среди соседей.
Калькулятор маршрута, который знает где заправиться
Когда данные по 100+ странам уже лежат, поверх них логично собрать калькулятор стоимости поездки. Вбиваешь точки маршрута, расход, объём бака — он считает километры по каждой стране, цену топлива в каждой и подсказывает, где залить полный бак выгоднее. Вот пример маршрута Анталья — Париж — пять стран, пять разных цен на дизель, разница между самой дешёвой и самой дорогой почти в два раза. На полном баке 60 литров экономия выходит до 40 евро, если правильно выбрать страну для заправки.
Как считается взвешенное среднее
По каждой стране берётся от двух до пяти источников: официальная статистика (если есть), отраслевой агрегатор и локальные АЗС-сети. Каждому источнику присвоен вес — чем ближе к первоисточнику, тем выше. Финальная цена — взвешенное среднее за неделю. Веса настраиваются вручную и пересматриваются при сбоях источников.
Бесплатное API — потому что таких данных в открытом виде нигде нет
Пока собирали базу, поняли: в открытом доступе агрегированных данных по топливу с таким покрытием просто не существует. Поэтому открыли бесплатное API — забирай цены по стране, бери историю, считай у себя. Документация для разработчиков — с примерами, лимитами и атрибуцией. За пару месяцев им уже пользуются десяток приложений и сайтов; раз появился спрос — значит, не зря возились.
Чего ждать не стоит
Не везде есть официальные источники — по нескольким странам Африки и Океании цены приходят с задержкой в неделю-другую. Цены — средние по стране, на конкретной АЗС в горах Армении может быть дороже, чем в Ереване. И это не делает заправку дешевле. Просто теперь, прежде чем выехать через четыре страны, вы хотя бы знаете, к какому числу в чеке готовиться.