このプロジェクトについて

YouTube Transcript APIは、YouTube動画から字幕や文字起こしを取得するためのPythonライブラリです。Seleniumベースのソリューションとは異なり、ヘッドレスブラウザを必要としないため、軽量でデプロイが容易です。手動で作成された字幕と自動生成された字幕の両方で動作します。 インストールはpip経由でシンプルに実行できます:`pip install youtube-transcript-api`。 コアAPIは`YouTubeTranscriptApi`クラスを提供し、`fetch()`メソッドはYouTubeの動画ID(完全なURLではなく)を受け取ります。これはテキスト、開始時間、再生時間を各スニペットに含んだ配列を持つ`FetchedTranscript`オブジェクトを返します。結果は反復可能で、インデックスアクセス可能、長さを取得可能です。 主な機能は以下の通りです: - `languages`パラメータを言語コードのリストとして渡すことで、特定の言語で字幕を取得する(例:`['de', 'en']`)。 - `preserve_formatting=True`により、イタリックやboldなどのHTMLフォーマットを保持する。 - `list()`を使用して動画の利用可能なすべての字幕をリストアップし、言語や字幕タイプ(手動作成 vs 自動生成)でフィルタリングする。 - `Transcript`オブジェクト上の`translate()`メソッドを使用して既存の字幕を他の言語に翻訳する。 - `formatters`サブモジュール内の組み込みフォーマッターを使用して、出力をJSON、SRT、WebVTT、CSV、またはプレーンテキストにフォーマットする。 - 言語、出力形式、翻訳、自動生成または手動作成の字幕の除外などのオプションを持つCLIツール(`youtube_transcript_api`)。 - クラウドプロバイダーからのIPブロックや大量のリクエストに対応するためのプロキシサポート。統合されたWebshareローティングリジデンシャルプロキシまたは汎用HTTP/SOCKSプロキシ設定が可能。 本プロジェクトはYouTubeのウェブクライアントAPIの非文書化された部分を使用しており、YouTubeが内部実装を変更した場合に機能しなくなる可能性があることを警告しています。MITライセンスで提供され、PyPIで利用可能です。