Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Pyspotify-周期性“无法播放曲目错误”_Python - Fatal编程技术网

Python Pyspotify-周期性“无法播放曲目错误”

Python Pyspotify-周期性“无法播放曲目错误”,python,Python,我对pyspotify有问题。我试图寻找一个艺术家的名字,得到他们的顶级曲目列表,然后播放其中一首。这是我的代码段: search_string = "artist:"+artist_to_find result = session.search(search_string) result.load() print result.track_total browser = result.artists[0].browse() bro

我对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()
我经常调用此代码,而没有前面的轨迹整理。每隔几轨,我就会出现以下错误:

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
谁能告诉我我做错了什么


谢谢

我对pyspotify没有经验,但我是出于好奇才看的

如果我是你,我会在调用play之前检查是否已加载


希望能有所帮助。

谢谢您的评论。我试着为正在加载的轨道添加一个检查,但没有帮助。如果为True:if session.player.state=='loaded':break我发现从libspotify SP_session_player_play函数中获取的错误SP_error_TRACK_不可播放。我已经黑了spotify库中的code player.py,以报告卸载,而不是错误,如果失败,我的代码将重新尝试,但是有人能告诉我为什么一首曲目会被视为不可播放吗?当我获取链接并在浏览器中播放时,链接有效,曲目播放没有问题。任何帮助都将不胜感激!