Python

【Python】YoutubeAPIで動画の字幕を取得する(文字起こし)

この記事は約3分で読めます。

 

Youtubeの音声の文字おこしする方法は色々あるのですが、音声認識だと精度とか手間がネックだったのですが、「youtube-transcript-api」というライブラリを使用すれば字幕情報を直接取得できるみたいなのでその方法を紹介したいと思います。

 

youtube-transcript-apiとは?

 

youtube-transcript-apiは、Googleが提供するYouTube Data APIを使って、YouTubeの動画の自動字幕の情報を取得するためのライブラリです。このライブラリを利用することで、手軽かつ自動的に動画の字幕を利用することが可能となります。

youtube-transcript-apiを利用するためには、Pythonのpipコマンドを用いてインストールする必要があります。以下がそのコマンドです。

 

$ pip install youtube-transcript-api

 

 ライブラリの基本的な使い方

 

youtube-transcript-apiを使った動画の字幕取得の基本的な使い方は、以下のステップで行うことができます。

 

① 必要なライブラリをインポートする

“`python
from youtube_transcript_api import YouTubeTranscriptApi
“`

 

② 字幕取得したい動画のIDを設定する

“`python
video_id = ‘動画ID’
“`

 

③ YouTubeTranscriptApiを用いて、字幕を取得する

“`python
transcript = YouTubeTranscriptApi.get_transcript(video_id, languages=[‘言語’])
“`

 

ここで、languagesの引数で設定するのは、取得する字幕の言語を指定することができます。

以上のステップで、動画の字幕を取得することができます。

具体的な設定方法については、YouTubeTranscriptApiの公式ドキュメントを参照してください。

 

サンプルコード

 

上記をまとめると以下のようになります

 

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': 字幕が表示されている時間}

 

ダウンロードしたい動画のvideo_idは動画URLのv=以降の部分です

例) https://www.youtube.com/watch?v=~

 

まとめ

今回は、「Pythonの「youtube-transcript-api」というライブラリを用いて、動画の字幕を文字起こしする方法」について、引数設定を中心に冗長に解説していきました。

 

 

関連動画:YoutubeのAPIを使って動画再生回数などをスクレイピングする

 

関連記事:【Python】Youtubeの再生数・コメント数・高評価数をスクレイピングで取得する

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

  1. […] 関連記事:【Python】YoutubeAPIで動画の字幕を取得する(文字起こし) […]

タイトルとURLをコピーしました