# Youtube downloader
# warning: use most recent version of youtube-dl, old versions give 404 error for subtitles
from __future__ import unicode_literals
import youtube_dl
import requests
import os
#directory for downloads - change
path = "/home/hans/youtube_writing_with_film/"
os.chdir(path)
#download list op pad - change here to use another list
sourcelist = 'http://pad.constantvzw.org/p/video-sources-links/export/txt'
#get download list from pad and split it in list of links to download
r = requests.get(sourcelist)
linklist = r.content.split()
#linklist = [linklist[1]] #shorter for testing
#downloading with youtube_dl
class MyLogger(object):
def debug(self, msg):
pass
def warning(self, msg):
pass
def error(self, msg):
print(msg)
def my_hook(d):
if d['status'] == 'finished':
print('Done downloading, now converting ...')
#options - for overview check https://github.com/rg3/youtube-dl/blob/master/youtube_dl/YoutubeDL.py#L121-L269
ydl_opts = {
# 'listsubtitles': 'True'
'writesubtitles': 'True',
'subtitlesformat': 'srt'
# 'allsubtitles': 'True'
# 'writeautomaticsub': 'True' #Write the automatically generated subtitles to a file
}
for link in linklist:
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download([link])