使用Spotipy调用Spotify API获取剧集信息遇404错误求解决
解决Spotify API获取剧集信息返回404的问题
错误核心原因
你遇到的404错误本质是Spotify API无法定位指定的剧集ID,常见诱因包括:
- 剧集ID无效或对应内容已被平台移除
- 目标剧集存在地域访问限制
- API调用未传入必要参数
解决步骤
1. 验证剧集ID有效性
先确认ID的正确性:
- 从Spotify客户端/网页端找到目标剧集,右键选择「复制剧集URI」(格式如
spotify:episode:1UQ7koXTRnYJ596YGNMq7u),可直接将完整URI传入sp.episode(),Spotipy会自动解析ID - 若纯ID调用仍报错,说明该剧集可能已被移除,或你的访问权限受限
2. 处理地域限制
Spotify播客内容可能有地域锁,调用API时需指定market参数:
- 使用Client Credentials授权时,传入ISO 3166-1 alpha-2格式的国家代码(如
"US"、"JP")
3. 正确代码示例
import spotipy from spotipy.oauth2 import SpotifyClientCredentials # 替换为你的客户端ID和密钥 client_credentials_manager = SpotifyClientCredentials( client_id='your_client_id', client_secret='your_client_secret' ) sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager) # 方式1:传入完整剧集URI+指定市场 try: episode_info = sp.episode('spotify:episode:1UQ7koXTRnYJ596YGNMq7u', market='US') print(episode_info) except spotipy.exceptions.SpotifyException as e: print(f"调用错误:{e}") # 方式2:传入纯ID+指定市场 try: episode_info = sp.episode('1UQ7koXTRnYJ596YGNMq7u', market='US') print(episode_info) except spotipy.exceptions.SpotifyException as e: print(f"调用错误:{e}")
4. 其他API方法说明
sp.episodes():批量获取多个剧集信息,参数为ID列表,示例:sp.episodes(['id1', 'id2'], market='US')sp.show():获取播客节目(Show)的基础信息,需传入节目ID而非剧集IDsp.show_episodes():获取某播客节目下的所有剧集列表,需传入节目ID
内容的提问来源于stack exchange,提问作者yo ndk tau
相关产品推荐
相关产品推荐

