在Python中使用spotipy库搜索和播放Spotify音乐
spotipy 是一个用于与 Spotify 执行操作的 Python 库,包括搜索和播放音乐。
首先,我们需要安装 spotipy 库。可以使用以下命令在终端中安装:
pip install spotipy
接着,我们需要一个 Spotify 的开发者帐户,用于访问 Spotify 的 API。你可以在 [https://developer.spotify.com/](https://developer.spotify.com/) 上注册一个开发者帐户。
一旦注册成功并创建了一个应用程序,你将获得两个重要的身份验证信息:Client ID 和 Client Secret。这些信息将用于在你的代码中进行身份验证。确保将这些信息保存在安全的位置。
让我们来看一个例子,演示如何使用 spotipy 搜索和播放 Spotify 音乐。
import spotipy
from spotipy.oauth2 import SpotifyOAuth
# 身份验证信息
client_id = 'YOUR_CLIENT_ID'
client_secret = 'YOUR_CLIENT_SECRET'
redirect_uri = 'YOUR_REDIRECT_URI' # 可以设置为"http://localhost:8888/callback"
# 创建认证对象
oauth = SpotifyOAuth(client_id=client_id, client_secret=client_secret, redirect_uri=redirect_uri, scope='user-top-read')
# 获得认证的 token
token_info = oauth.get_cached_token()
# 如果不存在 token,则引导用户进行身份验证
if not token_info:
auth_url = oauth.get_authorize_url()
print(auth_url)
response_code = input('Enter the response code: ')
token_info = oauth.get_access_token(response_code)
# 使用 token 创建一个认证的 spotipy 对象
sp = spotipy.Spotify(auth=token_info['access_token'])
# 使用 spotipy 搜索
search_results = sp.search(q='Radiohead', type='track', limit=5)
# 打印搜索结果
for track in search_results['tracks']['items']:
print(track['name'], ' - ', track['artists'][0]['name'])
# 播放 个搜索结果
track_uri = search_results['tracks']['items'][0]['uri']
sp.start_playback(uris=[track_uri])
在上面的代码中,我们首先创建了一个 SpotifyOAuth 对象,用于身份验证。在创建对象时,我们需要提供我们的 Client ID、Client Secret、回调 URI 和所需的范围。
然后,我们从 OAuth 对象中获取或缓存访问令牌,并创建一个认证的 spotipy 对象。
接下来,我们使用 spotipy 对象进行搜索。在搜索中,我们指定了要搜索的关键字、搜索类型和搜索结果的限制。
最后,我们打印搜索结果并使用 spotipy 对象的 start_playback() 方法播放 个搜索结果的音轨。
这只是一个简单的例子,展示了如何使用 spotipy 在 Python 中搜索和播放 Spotify 音乐。spotipy 还提供了许多其他功能,例如获取用户播放列表、收藏音乐和创建播放队列等。你可以查阅 [spotipy 的官方文档](https://spotipy.readthedocs.io/) 了解更详细的信息。
