Favicon

SIer’s Wonderland

Title Image

Netflixでの英語字幕をテキストファイルとして保存する方法

投稿日: 2024-12-15 | カテゴリ: 開発

昔から、その勉強効率はともかく洋画で英語学習するという勉強方法があります。 私も例に漏れずその勉強方法をやる時が時々あるのですが、英語字幕をつけて鑑賞しても切り替わる速度が早すぎて追えません。 調べてみると、Netflixでの英語字幕をテキストファイルとして保存する方法があったのでそのやり方紹介と、 テキストフォルダを使いやすくするための簡単な文章編集のコードを作成したので共有します。

Netflixでの英語字幕をテキストファイルとして保存する方法

  1. まずchromeでの拡張機能の一つであるSubadubをダウンロードしてください
  2. 次にNetflixを立ち上げ、英語字幕のある動画コンテンツを再生してください
  3. 英語字幕のある動画コンテンツを再生すると右上にダウンロードボタンがあるはずなので、「Download SRT」をクリックして、ダウンロードしてください

Netflix1

  1. srtファイルを開こうとすると対応するアプリケーションがないと言われる場合があります。 Macの場合、デフォルトで「テキストエディット.app」というソフトがあるはずなので、それを使って開けば字幕がテキストとして見れます。

ダウンロードしたsrtファイルからいらないものを取り除く

ダウンロードしたsrtファイルには,セリフの順番や時間も入っているため視認性が悪いです。 英語学習においてはセリフ部分だけを取り出せれば良いと思うので、セリフ部分だけを取り出すように編集します。

import re
input_file_path = 'path_here' #path_hereにはsrtファイルのパスを入れる.
output_file_path = 'modified.txt'

with open(input_file_path) as input_file, open(output_file_path, 'w') as output_file:
    for line in input_file:
        # modified_line = re.sub(r'\d', '', line)
        # ouput_file.write(modified_line)
        if not re.match(r'\d+:\d+:\d+,\d+ --> \d+:\d+:\d+,\d+', line):

            modified_line = re.sub(r'\d+', '', line)
            modified_line = modified_line.strip().replace('  ', ' ')
            if modified_line.strip() != '':
                output_file.write(modified_line + '\n'+ '\n')

Netflix2

まとめ

残念ながらSubadubはdisney plusでは使えないため、この方法で英語字幕を取得することはできませんでした。 技術力がつけば拡張機能自分で作ってみたいなと思います。