WxNeteaseMusic
WxNeteaseMusic copied to clipboard
python run.py之后是这样的。怎么解决的
File "run.py", line 2, in
朋友你好,这个版本适用于(Windows/OSX/Linux),如果你用的是树莓派并且是raspbian系统,因为mp3play不能在这个系统上正常使用,所以会出现此错误。 请使用树莓派专用版本,有任何问题欢迎继续留言。
同样在64位 ubuntu 16.04.2 LTS 下面执行python run.py确实是报上面那个错误啊。
查了下 mp3play只能在windows下使用啊?
抱歉朋友,现在暂时没有Ubuntu的环境,如果mp3play不能使用的话可能需要改一下代码,可以尝试使用mpg123解决
不会编程。。。希望你有时间可以调试下哈。另外希望还能看看能不能加个控制音量的选项。
这样,朋友,先安装mpg123:
sudo apt-get install mpg123
然后将WxNeteaseMusic.py中的 import mp3play
删除,再将play函数修改为:
def play(self):
while True:
if self.con.acquire():
if len(self.playlist) != 0:
# 循环播放,取出第一首歌曲,放在最后的位置,类似一个循环队列
song = self.playlist[0]
self.playlist.remove(song)
self.playlist.append(song)
mp3_url = song["mp3_url"]
try:
subprocess.Popen("pkill mpg123", shell=True)
time.sleep(1)
subprocess.Popen("mpg123 " + mp3_url, shell=True, stdout=subprocess.PIPE)
self.con.notifyAll()
self.con.wait(int(song.get('playTime')) / 1000)
except:
pass
else:
try:
subprocess.Popen("pkill mpg123", shell=True)
self.con.notifyAll()
self.con.wait()
except:
pass
另外,音量的话因为不同平台播放程序都不太一样,考虑找个周末的时候在树莓派版本加上音量控制功能:)
改了还是报同样的错误。。。run.py要修改吗?
把WxNeteaseMusic.py开头的import mp3play删了,可以了。
非常感谢啊,半夜还回答问题,不愧是程序员啊。
哈哈,不用客气,朋友,如果使用mpg123的话需要注意一个问题:
网易云音乐中部分音乐链接已失效,所以可能导致播放失败的情况,这种情况下,mpg123并不能感知到播放失败,还会一直等待当前播放失败的歌曲的时长才会播放下一首,或者其它命令触发切换动作,如(N)等。建议使用网易音乐的客户端把播放失败的这首歌直接删除掉,这样在播放时就不会卡住了。
祝使用愉快!
好的,非常感谢提醒,另外问个问题,我的微信扫码登录后,除了我自己给自己发命令,我的朋友给我微信发相应的命令是不是同样可以控制?
是的,只要收到相应指令都会执行。
明白,期待可以控制音量的版本。。
:)
睡觉啦,你也早点休息哈,^_^
mp3play 只能在windows平台运行,而且osx系统pip install mpg123提示没有mpg123这个库,该用什么替代呢?
@gurtyo 试试写成pip3 install mpg123?
@gurtyo 亲测mac里控制台写 sudo pip3 install mpg123 能成功安装。