Задать вопрос
@IvvanIvvanovv

API last.fm и сбор базы данных сотен тысяч пользователей с частотой прослушивания ими последних треков за год. Какие трудности могут возникнуть?

Замысел такой, по шагам:
1. Если не ошибаюсь, непосредственно через API этот шаг не удастся реализовать, поэтому без API, спарсить слушателей любимых исполнителей. На страницах исполнителей есть раздел Listeners и там на 9 страницах суммарно 270 слушателей - самых активных, на сколько понял.
2. Опять же через API, на сколько понимаю, соседей пользователей получить не удастся, поэтому спарсить их.
3. Друзей этих пользователей получить через API. В итоге получится список из скольких то десятков или сотен тысяч пользователей для последующего анализа их профилей.
4. С помощью API получить статистику прослушиваний треков каждым пользователем за последний год. Сохранить наиболее часто прослушиваемые треки пользователей с привязкой к их логину.
5. Взять свой список для сравнения.
6. Определить формулы для расчетов. Например из топ-100 треков за год, среднее количество прослушивания трека у пользователя 5, а у меня 10, т.е. в 2 раза больше - это привести к общему знаменателю и сравнить все треки из топ-100. В случае схождения треков приравнять каждому сошедшемуся треку величину от 0.1 до 1 и умножить на количество схождений из топ-100, таким образом получив рейтинг общего пересечения в топ-100 за год между каждым пользователем и собой.

В этих изощрениях мне видится смысл в контексте несовершенства алгоритма подбора соседей по музыкальным вкусам, который подбирает соседей по исполнителям, а не по трекам. У каждого исполнителя могут быть сотни треков и те пара треков, которые слушаю я, скорее всего не слушают те, кого last fm определяет мне в соседи, таким образом заходя в профили этих "соседей", я никогда не найду новых интересных для меня музыкальных треков и буду долго плеваться, а возможно даже страдать от головной боли после прослушивания того что в мои вкусы совершенно не вписывается. Музыкальные рекомендации сервиса столь же далеки от моих предпочтений, как и вкусы этих "соседей", поэтому пытаюсь изобрести что то свое. Рекомендации других сервисов тоже не идеальны. Да и попрограммировать чего нибудь хочется.

Вопрос: с какими проблемами могу столкнуться при реализации своего алгоритма, помимо того что ID пользователей придется парсить, поскольку через API их получить не удастся? Да и на сколько терпелив last fm? Нечто подобное делал для vk и там были сложности, на сколько помню, в том что когда стал активно получать списки аудио сотен тысяч пользователей, vk что то изменил и перестал выдавать целиком весь список аудио каждого пользователя, который мог доходить до 10000 композиций, и начал отдавать список микродозами по 100, разумеется запрашивая каптчу после каждой... До тех пор как vk внесли изменения, схема работала и редко, но попадались пользователи с повышенным числом схождений, а среди их аудио удавалось находить новую музыку для себя, минуя кровь из ушей.

П.С.
А может нечто подобное (поиск пользователей по сходящимся трекам, а не исполнителям треков) уже существует?
На сколько это могло бы быть полезно/востребовано для других? Мнения/советы/рекомендации по своей идее хотел бы услышать.
  • Вопрос задан
  • 169 просмотров
Подписаться 1 Средний 4 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы