Welcome to Etherpad!

This pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!

Get involved with Etherpad at http://etherpad.org
# 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])