0

python-mpd用来获取当前正在播放的歌曲艺术家和标题。我能够成功地做到这一点。

问题是在我停止播放歌曲之后,mpc stop而不是尝试获取当前正在播放的歌曲信息,它会显示最后播放的歌曲信息。

获取歌曲信息

>>> client.currentsong()['artist']
'Sean Paul feat. Alexis Jordan'

现在在我使用 mpc stop

>>> client.currentsong()['artist']
'Sean Paul feat. Alexis Jordan'
>>> 

所以,我的问题是如何确保 mpd 当前正在播放或停止?

我需要的是,mpc stop当我尝试获取歌曲信息后,它应该显示出来None,或者是否有类似if mpd_playing().

我试图查看python-mpd脚本,但没有运气。

4

1 回答 1

2
>>> status = client.status()
>>> status['state']
'play'
# or
'pause'
# or
'stop'

所以这是你需要的条件:

if client.status()['state'] in ('play', 'pause'):
    #playing
else:
    #stopped
于 2012-07-01T09:29:35.560 回答