我能够将我的第一个脚本拼凑起来!它的作用是进入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提交的标题相同。
考虑到我应该如何匹配视频文件的标题视频,我感到非常困惑。我该怎么办呢? 非常感谢你
答案 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, ])