我试图绕过下载部分,通过python流式传输YouTube。但是我从当前的解决方案中得到一个错误。 代码是:
val DEFAULT_LIST = run {
val it = ArrayList<MyObj>()
val one = MyObj("one")
val two = MyObj("two")
it.add(one)
it.add(two)
it
}
我得到的错误是:
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()
我已经声明为字符串,所以我找不到错误
答案 0 :(得分:1)
根据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