2015-08-18 151 views
1

我是新来的python,我正在写一个python脚本来使用youtube-dl来提取下载链接,就像控制台给出的链接(youtube-dl -get-url url)一样。 我不想下载媒体,我只需要我的脚本中的下载链接。使用youtube-dl来提取仅下载链接的脚本?

+1

嗯,你可以看看源代码,在他们的GitHub库... FRM的快速一瞥它好像他们只是在实例化类时设置'forceurl'选项。 – Bakuriu

回答

3
>>> from youtube_dl import YoutubeDL # $ pip install youtube-dl 
>>> url = 'https://www.youtube.com/watch?v=pvAsqPbz9Ro' 
>>> ydl = YoutubeDL() 
>>> r = ydl.extract_info(url, download=False) 
[youtube] pvAsqPbz9Ro: Downloading webpage 
[youtube] pvAsqPbz9Ro: Downloading video info webpage 
[youtube] pvAsqPbz9Ro: Extracting video information 
[youtube] pvAsqPbz9Ro: Downloading DASH manifest 
[youtube] pvAsqPbz9Ro: Downloading DASH manifest 
>>> r['url'] 
u'https://r6---sn-n8v7zne7.googlevideo.com/videoplayback?...&ipbits=0' 

如果有几个媒体格式,然后让媒体的网址最后格式:

with youtube_dl.YoutubeDL(dict(forceurl=True)) as ydl: 
    r = ydl.extract_info(url, download=False) 
    media_url = r['formats'][-1]['url']