Последнее время часто спрашивают - как попасть в
рейтинг инстаграм? Как строится рейтинг по городам, ведь в инстаграме нет такого поля как город?
Начнём со второго вопроса. Действительно, данных о том, где живёт тот или иной пользователь нет. Зато в самом приложении инстаграма есть замечательная галочка - "Добавить на фото-карту", работоспособность которой зависит от того, включен у вас GPS или нет. Если включен и галка стоит, то у каждой вашей фотографии будут проставлены координаты где она сделана. По ним как раз и можно определить город.
Вариант 1. Стандартный (автоматический).
Но программный интерфейс инстаграма отдаёт эти данные только по запросу, т.е. боты LiveDune говорят ему - дай мне последние 20 фоток (уж такое ограничение) в радиусе 10 километров (цифра меняется) по координатам *тут координаты центра любого города*. Эти 20 фоток ложатся во временное хранилище (за сутки таких фоток может набраться около 500 000 штук), потом, раз в 12 часов эти фотографии обрабатываются, из них вытаскиваются связки юзернейм и город. Для пользователей, которые уже были добавлены сохраняется только метка с городом, а новые ставятся в очередь на дополнительную обработку.
Что имеем в итоге? Более 1 100 000 пользователей и ещё больше меток о том, в каких городах были сделаны фото того или иного пользователя. Тут в дело вступает ещё один скрипт, который запускается раз в сутки и определяет итоговый город пользователя. Возьмём, например,
инстаграм Ксении Бородиной, для него есть следующие данные о фотографиях (слева город, справа количество фотографий):
1. Краснодар - 6
2. Москва - 8
3. Омск - 7
4. Ставрополь - 2
Как видно, в
Москве было сделано больше всего фотографий. Логично, что человек в родном городе, где он проживает, будет делать фотографий чаще - поэтому считаем этот город за основной и проставляем его в профиль. Вот и всё, так рейтинг строится автоматом.
Вариант 2. Новый (ручной).
А теперь появилась возможность добавить себя в рейтинг самостоятельно. На страничке с
рейтингом инстаграма, справа появилась незаметная кнопочка "Добавить пользователя". Клацайте по ней и появится окошко.
В окошко вводите никнейм пользователя и город, (я ввёл свои данные) после нажимаете добавить, и через пару мгновений появится сообщение с результатом - добавлен пользователь с указанным именем в очередь на обработку или нет.
P.S. Идея это сделать возникла вчера, вчера и сделал, а сегодня рассказываю вам об этом. Естественно из-за такого малого срока что-то может пойти не так и поломаться, поэтому запущено пока в тестовом режиме. А как буду уверен что всё работает как часики - сделаю кнопочку более заметной ;)