我有一个pyspotify的问题。我试图寻找一个艺术家的名字,得到他们的顶级曲目列表,然后播放其中的一个。这是我的代码段:Pyspotify - 周期性“曲目不能播放错误”
search_string = "artist:"+artist_to_find
result = session.search(search_string)
result.load()
print result.track_total
browser = result.artists[0].browse()
browser.load()
print browser.tophit_tracks
for track in browser.tophit_tracks:
print track.name, track
toptracks = browser.tophit_tracks
print "error check"
if toptracks!=-1:
print "------------------"
tracktoplay=choice(toptracks)
rand = randint(0,10)
print "random track number = %s" %rand
tracktoplay = browser.tophit_tracks[rand]
print tracktoplay.link
print tracktoplay.name
print "------------------"
session.player.load(tracktoplay)
session.player.play()
我经常在没有以前的轨道完成的情况下调用此代码。 Perodically(每隔几首曲目)我得到以下错误:
random track number = 7
spotify:track:6vQN2a9QSgWcm74KEZYfDL
Take A Chance On Me
------------------
Traceback (most recent call last):
File "../jj.py", line 146, in <module>
app.run()
File "../jj.py", line 116, in run
conversation.handleForever()
File "/home/mh/Projects/jjo/client/conversation.py", line 44, in handleForever
listen(self)
File "/home/mh/Projects/jjo/client/new_play.py", line 110, in listen
play(self,response)
File "/home/mh/Projects/jjo/client/new_play.py", line 194, in play
session.player.load(tracktoplay)
File "/usr/local/lib/python2.7/dist-packages/spotify/player.py", line 45, in load
self._session._sp_session, track._sp_track))
File "/usr/local/lib/python2.7/dist-packages/spotify/error.py", line 30, in maybe_raise
raise LibError(error_type)
spotify.error.LibError: The track cannot be played
任何人都可以建议对我做错了吗?
感谢
我发现我从libspotify“sp_session_player_play”函数中收到错误SP_ERROR_TRACK_NOT_PLAYABLE。我篡改了代码(spotify库中的player.py报告卸载而不是错误),以便在我的代码失败时重新尝试,但是谁能告诉我为什么某个曲目可能无法播放?当我拿着链接并在我的浏览器中播放时,链接是有效的,并且曲目播放没有问题。任何帮助将不胜感激! –