You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Spotipy在同一网络的Chromecast设备上启动Spotify播放列表播放?

使用Spotipy + Pychromecast实现Chromecast播放Spotify播放列表

Spotipy本身没有直接控制Chromecast的能力,但可以结合pychromecast库和Spotify的Connect功能实现需求,以下是具体步骤:

1. 安装依赖包

先安装所需的Python库:

pip install spotipy pychromecast

2. 配置Spotify开发者权限

  • 登录Spotify开发者后台创建应用,获取CLIENT_ID和CLIENT_SECRET,设置重定向URI(比如http://localhost:8080)
  • 授权时必须申请user-modify-playback-state、user-read-playback-state、playlist-read-private这几个scope,否则无法修改播放状态和读取播放列表

3. 扫描并连接局域网内的Chromecast

用pychromecast找到目标设备:

import pychromecast

# 替换成你的Chromecast设备名称
TARGET_CAST_NAME = "客厅Chromecast"

chromecasts, _ = pychromecast.get_listed_chromecasts(friendly_names=[TARGET_CAST_NAME])
if not chromecasts:
    print(f"未找到名称为{TARGET_CAST_NAME}的Chromecast设备")
    exit()

cast = chromecasts[0]
cast.wait()  # 等待设备连接就绪

4. 初始化Spotipy客户端并获取播放列表URI

import spotipy
from spotipy.oauth2 import SpotifyOAuth

sp = spotipy.Spotify(auth_manager=SpotifyOAuth(
    client_id="你的CLIENT_ID",
    client_secret="你的CLIENT_SECRET",
    redirect_uri="http://localhost:8080",
    scope="user-modify-playback-state user-read-playback-state playlist-read-private"
))

# 替换成你的播放列表ID
PLAYLIST_ID = "37i9dQZF1DXcBWIGoYBM5M"
playlist = sp.playlist(PLAYLIST_ID)
playlist_uri = playlist["uri"]

5. 切换播放目标并启动播放

需要先通过Spotipy确认Chromecast已被识别为Spotify可用设备,然后切换播放目标并启动列表播放:

# 获取Spotify可用设备列表,找到Chromecast的设备ID
devices = sp.devices()
cast_device_id = None
for device in devices["devices"]:
    if device["name"] == TARGET_CAST_NAME:
        cast_device_id = device["id"]
        break

if not cast_device_id:
    print("Spotify未检测到该Chromecast设备,请确保设备已登录相同的Spotify账号")
    exit()

# 切换播放目标到Chromecast,同时强制开始播放
sp.transfer_playback(device_id=cast_device_id, force_play=True)

# 启动指定播放列表的播放
sp.start_playback(context_uri=playlist_uri)

关键注意点

  • 确保运行代码的设备和Chromecast在同一局域网内
  • Chromecast必须登录与授权Spotipy时相同的Spotify账号
  • 如果首次运行,Spotipy会弹出浏览器让你授权,授权后会自动保存token,后续无需重复授权

内容的提问来源于stack exchange,提问作者Karl_S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 12:40:07