youtubeの字幕をダウンロードするスクリプト
youtubeを観てて、字幕ファイルもローカルに保存しておきたいなっとふと思ったので調べてみると・・・
・..::Exitarium::..:YouTubeのキャプションをダウンロードする方法 - livedoor Blog(ブログ)
こんな感じの丁寧な記事を見つけたので参考にして次のようなものを書いてみた。
Pythonのバージョンは2.7。
import urllib2 def get_caption(url): #字幕URLを生成して f に読み込む関数 lc = 'ja' #言語設定 v = url[31:42] #video_id の取得 capurl='http://video.google.com/timedtext?hl='+lc+'&lang='+lc+'&name=&v='+v print capurl f = urllib2.urlopen(capurl) f = f.read() return f def write(xml): #caption.xmlを生成する関数 cap = open('caption.xml', 'w') cap.write(xml) cap.close() def main(): url = 'youtubeの動画URL' xml = get_caption(url) write(xml) if __name__ == "__main__": main()
これで、youtubeの動画URLを入力すればカレントディレクトリにcaption.xmlが生成される。
変数の命名が適当なのは許してください><