Files
obsidian-vault/personal/plans/spotify-export-2026-09-26.md
T

3.0 KiB

План: выгрузка Spotify в Obsidian

Создан: 2026-09-26 | Статус: в работе Контекст: Spotify-тулзет снова работает после hermes auth spotify. Счётчики проверены живыми запросами.


Цель

Обновить personal/spotify-library.md полными данными (сейчас там версия от 2026-05-12 — устарела).

Что выгружаем

Раздел Кол-во Endpoint
🎵 Лайкнутые треки 182 GET /me/tracks (пагинация по 50)
📂 Плейлисты 8 GET /me/playlists → GET /playlists/{id}/items
📻 Recently played 50 GET /me/player/recently-played
💽 Сохранённые альбомы 42 GET /me/albums (пагинация по 50)

8 плейлистов (владелец — только свои)

Плейлист Треков Владелец
Мои треки Shazam 38 Alex
Мексика🌮 38 Alex
Shazamed 94 Alex
Норм плейлист 0 Alex
Punch's Pet Playlist 30 Alex
Rock 22 Alex
This Is Hard Boogie 36 Bad Boombox — чужой
gaming lofi beats 256 bits & hits — чужой

Чужие плейлисты — выгрузить только шапку (название, ссылка, кол-во), треки не тянуть (256 треков чужого плейлиста = мусор).


Шаги

  1. Бэкап — скопировать personal/spotify-library.md → personal/spotify-library.md.bak-2026-09-26
  2. Лайки: 4 страницы по 50 (offset=0,50,100,150)
  3. Плейлисты: 6 своих, треки постранично (/items, по 50)
  4. Recently played: 50
  5. Альбомы: 1 страница по 50
  6. Собрать markdown через jq (без TSV-промежутков — см. pitfalls)
  7. Записать в vault, обновить personal/index.md

Pitfalls (перенос из Яндекс-выгрузки)

  • Не гонять через промежуточный TSV — табы экранируются. Join целиком в jq.
  • JSONL vs JSON — при чтении пагинации нужен jq -s.
  • mcp_obsidian_write_note не тянет >100KB — копировать файл напрямую в vault.
  • execute_code и inline-python3 требуют апрува — только bash + jq + curl.
  • Spotify API не даёт полную историю — recently-played максимум 50 треков и только за последние сутки. Полная история — только через spotify.com/account/privacy → Request data.

Проверка

grep -c "^| [0-9]" file.md   # строк данных
grep -c "||" file.md          # должно быть 0