環境
- Windows 10
- Python 3.9.4
- VSCode
使用するソースコード
以下の公開リポジトリに置いています
GitHub - masayan1126/tao-py-py: 作業自動化用 Python ライブラリ
作業自動化用 Python ライブラリ. Contribute to masayan1126/tao-py-py development by creating an account on GitHub.
手順
ライブラリのインストール
youtube-transcript-apiという専用のライブラリを使用することで字幕情報を取得できます。なお、バージョン管理にpipenvを使用しています
pipenv install youtube-transcript-api
ダウンロードしたい動画のvideo_idを控える


masayan
video_idは動画URLのv=以降の部分です
Ex) https://www.youtube.com/watch?v=~
ダウンロードの処理を実装する
以下のようなスクリプトを実行すると、1動画内の字幕情報を、辞書型で取得することが可能です
from youtube_transcript_api import YouTubeTranscriptApi
transcript_list = YouTubeTranscriptApi.list_transcripts("video_id")
for transcript in transcript_list:
for tr in transcript.fetch():
print(tr) # {'text': '字幕のテキスト情報', 'start': 字幕の開始時間, 'duration': 字幕が表示されている時間}