我试图通过蟒蛇绕过下载部分流的YouTube。但是我得到从我目前的解决方案的错误。该代码是:
import pafy, vlc
url = str(raw_input())
video = pafy.new(str(url))
best = video.getbest()
playurl = best.url()
Instance = vlc.Instance()
player = Instance.media_player_new()
Media = Instance.media_new(playurl)
Media.get_mrl()
player.set_media(Media)
player.play()
我得到的错误是:
File "musicdownplay.py", line 5, in <module>
playurl = best.url()
TypeError: 'unicode' object is not callable
我已经声明为一个字符串,所以我不能找出错误
按照API,video.getbest()
返回Stream
对象。
和Stream
对象有一个属性Stream.url
,不是一个函数Stream.url()
。
从文档:
Stream.url
流的直接访问URL。这可以用于流媒体中的mplayer和VLC,或与wget或curl下载。直接下载,使用Stream.download()方法。
TL; DR:更改playurl = best.url()
到playurl = best.url