YouTube-dl可从Reddit下载和命名视频

时间:2015-02-18 10:13:01

标签: python python-3.x youtube-dl praw

我能够将我的第一个脚本拼凑起来!它的作用是进入sub-reddit,获得最高提交,然后使用youtube-dl下载视频。 它有效!

import praw
import os

user_agent = "mybot"

r = praw.Reddit(user_agent=user_agent)

submissions = r.get_subreddit('unexpectedjihad').get_top(limit=10)
urls = []
def yt() :
    for x in submissions:
        urls.append(str(x.url))
    return urls

yt_urls = yt()

for item in yt_urls:
    print "downloading..." + " "
    os.system("youtube-dl" + " " + item)
    print "done"

我接下来要做的是让Youtube-dl设置文件名与reddit提交的标题相同。

考虑到我应该如何匹配视频文件的标题视频,我感到非常困惑。我该怎么办呢? 非常感谢你

1 个答案:

答案 0 :(得分:1)

根据the docs,您希望将-o传递给youtube-dl,E.G。:

for item in submissions:
   os.system('youtube-dl -o {}.%(ext)s {}'.format(item.title, item.url))

但是,考虑到可能出现的问题,直接嵌入YDL可能更简单,E.G。:

import youtube_dl
# ... reddit stuff here ...

for item in submissions:
   # see options at https://github.com/rg3/youtube-dl/blob/master/youtube_dl/YoutubeDL.py#L89
   ydl_opts = {'outtmpl': item.title + '.%(ext)s'}
   with youtube_dl.YoutubeDL(ydl_opts) as ydl:
       ydl.download([item.url, ])