Spotify Player技能使用说明
Spogo - Linux服务器的Spotify命令行工具
通过基于Cookie的认证方式,在无图形界面的Linux服务器上控制Spotify。无需OAuth回调——非常适合远程服务器使用。
为何需要此工具?
由steipete在ClawHub上发布的原始spotify-player工具假设用户可通过本地浏览器导入Cookie(使用spogo auth import --browser chrome命令)。但在没有本地浏览器的无图形界面Linux服务器上,此方法无法使用。

本工具文档介绍了基于Cookie的替代方案——只需复制2个浏览器Cookie即可完成设置。无需OAuth认证,也无需本地主机。
系统要求
- Spotify Premium账户
- 已安装Go 1.21+版本
- 用户的Spotify浏览器Cookie
安装指南(Linux系统)
1. 安装Go(如未安装)
# Ubuntu/Debian
sudo apt update && sudo apt install -y golang-go
# Or download latest from https://go.dev/dl/
wget https://go.dev/dl/go1.23.4.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.23.4.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin:~/go/bin' >> ~/.bashrc
source ~/.bashrc
2. 安装spogo
go install github.com/steipete/spogo/cmd/spogo@latest
安装路径为~/go/bin/spogo. 如有需要,请添加到PATH:
echo 'export PATH=$PATH:~/go/bin' >> ~/.bashrc
source ~/.bashrc
3. 验证
spogo --version
# spogo v0.2.0
设置(Cookie身份验证)
由于OAuth需要本地主机回调(在远程服务器上无法实现),我们转而使用Cookie身份验证。
1. 从浏览器获取Cookie
让用户打开开发者工具 → 应用程序 → Cookie →open.spotify.com并复制:
sp_dc- 主要身份验证令牌(长字符串,必需)sp_t- 设备ID(UUID格式,播放所需)
2. 创建配置文件
创建~/.config/spogo/config.toml:
default_profile = "default"
[profile.default]
cookie_path = "~/.config/spogo/cookies/default.json"
market = "IL"
language = "en"
3. 创建Cookie文件
创建~/.config/spogo/cookies/default.json:
[
{
"name": "sp_dc",
"value": "USER_SP_DC_VALUE",
"domain": ".spotify.com",
"path": "/",
"expires": "2027-01-01T00:00:00Z",
"secure": true,
"http_only": true
},
{
"name": "sp_t",
"value": "USER_SP_T_VALUE",
"domain": ".spotify.com",
"path": "/",
"expires": "2027-01-01T00:00:00Z",
"secure": false,
"http_only": false
}
]
4. 验证
spogo auth status
# → "Cookies: 2 (file)"
命令
# Search
spogo search track "query"
spogo search track "query" --json --limit 5
# Play
spogo play spotify:track:ID
spogo play # Resume
spogo pause
spogo next / spogo prev
# Devices
spogo device list --json
spogo device set "DEVICE_ID"
# Status
spogo status
spogo status --json
"缺少设备ID"错误 - 浏览器备用方案
spogo需要一个活跃的Spotify会话。如果近期没有设备播放过,您可以通过浏览器启动一个会话。
注意:此操作是可选的,仅当
spogo device list返回没有活跃设备时才需要。 它会在open.spotify.com代理的独立浏览器配置文件中打开(而非用户的个人浏览器)。 代理仅导航至Spotify并点击播放——不会访问其他浏览器状态。
- 在浏览器中打开曲目:
browser open https://open.spotify.com/track/TRACK_ID profile=openclaw
-
点击播放通过浏览器自动化
-
转移到目标设备:
spogo device set "DEVICE_ID"
播放后,Spotify会话会保持活跃数小时。
速率限制
- Connect API(默认):无速率限制 ✓
- Web API(
--engine web):有速率限制(出现429错误) - 当速率受限时访问曲库 → 请使用浏览器自动化
故障排除
"缺少设备ID"
没有活动的Spotify会话。请先使用浏览器回退方案(见上文)启动播放。
"401 未授权"
Cookie已过期。请从浏览器获取新的Cookie并更新JSON文件。
命令有效但无声音
检查spogo device list- 播放可能发生在错误的设备上。使用spogo device set "设备ID"进行切换。
安全与隐私
- Cookie处理:
sp_dc和sp_t存储在本地的~/.config/spogo/cookies/目录中——请将其视为敏感信息,切勿记录或分享 - 网络访问:spogo仅与Spotify API(
api.spotify.comopen.spotify.com)浏览器回退 - :可选——仅在没有活动的Spotify设备时使用。使用代理的浏览器配置文件打开open.spotify.com
并点击播放。这不会提取额外的Cookie或访问其他浏览器状态安装来源 - :go install
来自官方的steipete/spogoGitHub仓库——开源、可审计注意
Cookie有效期
- :约1年,但如果用户注销或更改密码可能会失效需要高级版
- :免费账户无法使用Connect API市场设置
- :更改配置中的market
以获取正确的地区可用性(IL、US等)in config for correct regional availability (IL, US, etc.)


微信扫一扫,打赏作者吧~