我正在为音乐媒体平台写一个CLI。其中一项功能是您可以直接从CLI播放YouTube视频。我真的不知道该怎么做,但这个听起来最合理:
我将使用那些您可以从YouTube下载音乐的网站,例如http://keepvid.com/
,然后我直接播放并播放,但我有一个问题。是否有任何Python库能够执行此操作,如果是这样,您是否有任何具体示例?
我一直在寻找,但我一无所获,即使不是GStreamer。
答案 0 :(得分:2)
您需要两件事才能下载YouTube视频,视频ID由URL的v=
部分代表,隐藏字段t=
是存在于页面源中。我不知道这个t
值是什么,但这就是你所需要的:)
然后,您可以使用格式的网址下载视频;
http://www.youtube.com/get_video?video_id=*******&t=*******
星星表示获得的值。
我猜你可以从用户输入中询问视频ID,因为它很容易获得。然后,您的程序会下载该视频的HTML来源,解析t
值的来源,然后使用新构建的网址下载视频。
例如,如果您在浏览器中打开此链接,则应下载该视频,或者您可以使用下载程序,例如Wget;
http://www.youtube.com/get_video?video_id=3HrSN7176XI&t=vjVQa1PpcFNM4c8MbEhsnGaNvYKoYERIJ-hK7ErLpUI=
答案 1 :(得分:0)
KeepVid似乎只是一个JavaScript书签,它将您链接到KeepVid下载页面,然后您可以在其中下载各种格式的YouTube视频。因此,除非您想弄清楚如何流式传输它链接到的文件,否则它并不容易实现。您必须抓取返回的页面并确定要下载的URL,然后您必须从该URL流式传输(并且某些格式可能会或可能不会流式传输)。
顺便说一句,即使他们没有指定服务条款,我也会想到,因为他们似乎主要是广告支持,通过绕过广告支持的网页滥用他们的功能将符合道德标准有问题的。