核心用法
本 skill 通过 Spotify Web API 授权访问个人音乐数据,支持三大功能模块:
1. 听歌历史查询 — 调用 recent 接口获取最近 50 首播放记录
2. 音乐品味分析 — 按短/中/长期(4周/6个月/全部时间)拉取 Top Artists 与 Top Tracks
3. 个性化推荐 — 基于用户 Top Artists 种子生成相似艺人/曲目建议
技术路径为标准 OAuth 2.0 授权码模式:创建 Spotify Developer App → 配置环境变量 → 执行 spotify-auth.py 完成浏览器授权 → 本地持久化 token。后续调用由 spotify-api.py 封装,支持命令行直接查询或 JSON 原始输出。
显著优点
- 官方数据源:直接对接 Spotify 生产级 API,数据实时性与准确性高于第三方爬虫
- 细粒度时间维度:short/medium/long_term 三级时间切片,满足趋势追踪与长期画像需求
- 扩展性良好:保留原始
/me等端点调用能力,便于自定义分析 - Token 自动刷新:内置过期处理,降低维护成本
潜在局限
- 授权门槛:需注册开发者账号、创建 App、配置 Redirect URI,非技术用户上手成本较高
- 地域与账户限制:受 Spotify 服务区域及付费账户功能差异影响(如部分市场无歌词 API)
- 速率限制:未提及配额管理,高频调用可能触发 429 限制
- 隐私敏感:需授予
user-top-read等侵入性 scope,用户可能顾虑数据暴露
适合人群
- 音乐数据分析师、Playlist 策展人
- 希望将听歌习惯集成至个人助手的开发者/极客用户
- 需要基于真实收听数据生成推荐的音乐爱好者
常规风险
- Token 本地存储:虽设 0600 权限,但文件系统泄露仍可能导致账户劫持
- Client Secret 管理:环境变量方式在共享设备或多用户场景存在暴露风险
- Redirect URI 配置:文档强调使用
127.0.0.1而非localhost,可避免部分 DNS 重绑定攻击,但仍需确保端口未被其他服务占用 - Scope 最小化不足:申请权限包含
user-read-playback-state等未在核心功能中明确使用的 scope,建议按实际用途裁剪