Я пытаюсь автоматизировать добавление песен для спойтинга, используя python. Здесь, в коде, я пытаюсь найти песню, используя song_name и имя исполнителя, и использую API Sittify, чтобы получить URI песни. (https://developer.spotify.com/documentation/web-api/reference/search/search/)
Однако полученный мною ответ недействителен, т.е. он не возвращает список песен с uris, он просто возвращает запрос или запрос, который я отправляю API.
например, {'track': {'href': 'https://api.spotify.com/v1/search?query=track%3AYEAH+RIGHT+artist%3AJoji&type=track&offset=0&limit=20', 'items': [], 'limit': 20, 'next': Нет, «смещение»: 0, «предыдущий»: нет, «всего»: 0}}
def get_spotify_uri(self, song_name, artist):
"""Search For the Song"""
query = "https://api.spotify.com/v1/search?q=track:{}%20artist:{}&type=track".format(
song_name,
artist
)
response = requests.get(
query,
headers={
"Content-Type": "application/json",
"Authorization": "Bearer {}".format(spotify_token)
}
)
response_json = response.json()
print(response_json)
songs = response_json["tracks"]["items"]
# only use the first song
uri = songs[0]["uri"]
return uri
Error: response
{'tracks': {'href': 'https://api.spotify.com/v1/search?query=track%3ANext+%28Album+Version%29+artist%3AThe+Weeknd&type=track&offset=0&limit=20', 'items': [], 'limit': 20, 'next': None, 'offset': 0, 'previous': None, 'total': 0}}
Traceback (most recent call last):
File "/home/nikhil/Crypy/spotifyplaylist.py", line 149, in <module>
cp.add_song_to_playlist()
File "/home/nikhil/Crypy/spotifyplaylist.py", line 124, in add_song_to_playlist
self.get_liked_videos()
File "/home/nikhil/Crypy/spotifyplaylist.py", line 77, in get_liked_videos
"spotify_uri": self.get_spotify_uri(song_name, artist)
File "/home/nikhil/Crypy/spotifyplaylist.py", line 119, in get_spotify_uri
uri = songs[0]["uri"]