Python实现Spotify音频流/获取音频文件,求pyspotify有效替代方案
可行的替代方案
1. librespot-python
这是Librespot项目的Python绑定,专门适配Spotify高级账户,支持直接获取音频流、播放曲目,可完全替代pyspotify的核心功能。
- 安装命令:
pip install librespot-python - 基础使用示例(通过Spotify URL播放音频):
你也可以通过from librespot.core import Session from librespot.player import Player # 用你的Spotify账户登录(支持用户名密码或授权令牌) session = Session.Builder().user_pass("你的用户名", "你的密码").create() player = Player(session) # 通过Spotify曲目URL播放 track_url = "https://open.spotify.com/track/xxxxxx" player.load(track_url, True) player.play()player.get_audio_stream()获取原始音频流数据,用于自定义处理。
2. Spotipy + 本地Spotify客户端控制
如果你已经在用spotipy,可借助Spotify的用户播放控制API,直接控制本地已登录的Spotify客户端播放指定曲目,无需额外处理音频流:
- 确保你已通过spotipy完成用户授权(需要
user-modify-playback-state权限) - 示例代码:
import spotipy from spotipy.oauth2 import SpotifyOAuth sp = spotipy.Spotify(auth_manager=SpotifyOAuth( client_id="你的客户端ID", client_secret="你的客户端密钥", redirect_uri="你的回调URI", scope="user-modify-playback-state user-read-playback-state" )) # 解析Spotify URL获取曲目URI track_url = "https://open.spotify.com/track/xxxxxx" track_uri = track_url.replace("https://open.spotify.com/track/", "spotify:track:") # 控制本地客户端播放该曲目 sp.start_playback(uris=[track_uri])
注意事项
- 所有方案仅适用于Spotify高级账户,免费账户无法获取音频流或控制播放
- 请严格遵守Spotify的服务条款,不要用于未经授权的音频下载或分发
内容的提问来源于stack exchange,提问作者violetsg
相关产品推荐
相关产品推荐

