Рассинхронизация файла SavedTracks.json и getSavedTracks #249
Replies: 2 comments 18 replies
-
Лайки в файле обновляются каждый день единожды. Если новых лайков за день меньше 50, они просто добавляются к прошлым. Когда новых 50 и больше или сегодня понедельник, файл полностью перезаписывается данными от Если ошибки 500 и паузы в 2 секунды укладываются в лимит выполнения, то в файл запишется не полный объем лайков. То есть запросы отправлены для всех, но успешные ответы только для части. goofy построен так, чтобы игнорировать некоторые ошибки дабы не прерывать скрипты на полпути. Отсюда паузы после ошибок. Иначе нестабильность ответов от Spotify ломает конечную цель - обновление плейлистов. Учитывая что в файле остались треки, на которых уже нет лайка, файл давненько не перезаписывался. Или Какую дату покажет этот код? Наверное свежую. Иначе каждый запуск
Ошибки же 500+ это внутренние проблемы серверов Spotify. С ними ничего не сделаешь. Как писали на их форуме этим летом, подобное может быть связано с большим количеством лайков. Например, могли потерять лимиты. Ведь в плейлист разрешают 10-11 тысяч, а лайки якобы безлимит или какие там правила сегодня, не знаю. Теорию с лимитами относительно легко проверить. Руками унести пару тысяч нынешних лайков в обычный плейлист, чтобы не потерять. Снять с них лайки Поэтому поразбираться с |
Beta Was this translation helpful? Give feedback.
-
Скрипя сердцем проверил теорию о превышении лимита в 10 т. треков. Потому что хоть лайки и можно потом восстановить, такой ценный ресурс как время их добавления, будет утерян. Но выхода нет, вопрос надо как-то решать. Сперва удалил последние 3,5 т. треков, естественно сохранив их в файл.
После этого удалось через Теперь соответственно вопросы:
|
Beta Was this translation helpful? Give feedback.
-
Обратил внимание, что у меня в массивах с лайками, стали часто попадаться треки без лайков. Стал изучать этот момент и оказалось, что в файле SavedTracks.json сотни не лайкнутых треков. Причем это не просто нелайкнутнатые версии лайкнутых треков, что иногда случается. А действительно, довольно большое количество треков, которых нет в Любимых.
Более того. В самом файле меньше 3 тысяч треков, в то время когда лайков больше 13 тысяч.
В принципе, интересна причина этого.
У есть скрипты снимающие лайки с альбомов и с плейлистов, если они полностью прослушаны. Но лайки с самих треков они не снимают. Есть скрипт добавляющий треки в SavedTracks.json, но только после того как трек лайкнут. На всякий случай я этот момент из скрипта исключил. Больше вроде ни какого автоматического вмешательства ни в файл SavedTracks.json, ни в сами лайки нет. Тем более какого-то удаления из файла.
Я не знаю алгоритм формирования этого файла, но подозреваю, что это должна быть полная копия SavedTracks, с ежедневным обновлением. Т.е. новые лайки добавляются, разлайканые треки удаляются. Судя по всему, у меня эта синхронизация сломалась.
Попробовал решить вопрос самостоятельно. Но не могу получить массив getSavedTracks. Подозреваю из-за его размера. При получении например в пределах тысячи треков, все работает отлично. При большем, или максимальном значении появляется информация об ошибке
После этого каждые 2 секунды идет цикл таких сообщений с изменением значения положения трека offset на следующие 50 треков.
Естественно при достижении лимита времени, скрипт полностью останавливается не досчитав до конца.
UPD Все-таки за 300 секунд отработал скрипт с getSavedTracks. По информации из консоли offset=13150, т.е. все лайки. Но количество треков в полученном массиве почему-то всего 3750.
Ну и собственно вопрос - что теперь делать? Каким-то образом получить список лайков, перезалить его в SavedTracks.json? Будет ли при этом соблюдаться история добавления лайков? Будут ли в дальнейшем синхронизировано содержание SavedTracks.json и getSavedTracks?
Beta Was this translation helpful? Give feedback.
All reactions