回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>正如标题所说,我想看看一个播放列表是否有一个播放列表图像封面,这样它就不会试图加载一个不存在的播放列表</p>
<p>以下是我的方法:</p>
<pre><code> currentPlaylist = spotifyObject.user_playlist(username, playlistManageURI)
if ['images'][0] in currentPlaylist:
playlistCover_url = currentPlaylist['images'][0]['url']
image = QImage()
image.loadFromData(requests.get(playlistCover_url).content)
self.playlistCover.setScaledContents(True)
self.playlistCover.setPixmap(QPixmap(image))
else:
print('Playlist Cover doesnt exist!')
</code></pre>
<p>如果一个播放列表确实有一个图像封面,如果我尝试加载一个不存在的图像封面,它会给我</p>
<pre><code>IndexError: list index out of range
</code></pre>
<p>下面是currentPlaylist与带有封面的播放列表的外观</p>
<pre><code>{
"collaborative": false,
"description": "",
"external_urls": {
"spotify": "https://open.spotify.com/playlist/xxxxxxxx"
},
"followers": {
"href": null,
"total": 4
},
"href": "https://api.spotify.com/v1/playlists/xxxxxxxx?additional_types=track",
"id": "xxxxxx",
"images": [
{
"height": null,
"url": "https://i.scdn.co/image/ab67706c0000bebbcab54ad44bbf6dd124838df1",
"width": null
}
],
"name": "xxxxx",
"owner": {
"display_name": "xxxxx",
"external_urls": {
"spotify": "https://open.spotify.com/user/xxxxxxxx"
},
"href": "https://api.spotify.com/v1/users/xxxx",
"id": "xxxxx",
"type": "user",
"uri": "spotify:user:xxxx"
</code></pre>
<p>这就是没有封面的样子(完全是空白播放列表)</p>
<pre><code>{
"collaborative": false,
"description": "xxxx",
"external_urls": {
"spotify": "https://open.spotify.com/playlist/xxxxxx"
},
"followers": {
"href": null,
"total": 0
},
"href": "https://api.spotify.com/v1/playlists/xxxxxx?additional_types=track",
"id": "xxxxxx",
"images": [],
"name": "xxxxxx",
"owner": {
"display_name": "xxxxx",
"external_urls": {
"spotify": "https://open.spotify.com/user/xxxxx"
},
"href": "https://api.spotify.com/v1/users/xxxx",
"id": "xxxxxxxx",
"type": "user",
"uri": "xxxxxxx"
</code></pre>