Shunya Ueta

Python で DeepL API Free を利用してテキストファイルを翻訳する

機械翻訳サービスの DeepL はアプリだけでなく API 提供も行っている。 今回は DeepL が公開している free API を利用して、テキストファイルを英日翻訳して、翻訳結果をテキストファイルとして保存する方法について説明する。

無料 API は1か月あたり500,000文字の上限ありの制限があるが、Pro version と変わらない品質の翻訳を行うことができる。 個人利用する分にはこの文字数制限は特に大きな問題にはならないと思われる。

https://www.deepl.com/ja/pro#developer

まずアカウントを作成して、DeepL API Free のAPI_KEYを入手する。 その後、以下のスクリプトを実行すれば、翻訳元のファイル名にJA_という接頭辞がついたファイルが保存される。

import requests

# NOTE: put API KEY
API_KEY:str = ''
# NOTE: put target file path
target_file:str = ""

with open(target_file) as f:
    txt = f.read()

params = {
            "auth_key": API_KEY,
            "text": txt,
            "source_lang": 'EN',
            "target_lang": 'JA'
        }

request = requests.post("https://api-free.deepl.com/v2/translate", data=params)

result = request.json()

with open("JA_"+target_file, "w") as text_file:
    text_file.write(result["translations"][0]["text"])
---

関連しているかもしれない記事


📮 📧 🐏: 記事への感想のおたよりをおまちしてます。 お気軽にお送りください。 メールアドレス入力があればメールで返信させていただきます。 もちろんお返事を希望せずに単なる感想だけでも大歓迎です。

このサイトの更新情報をRSSで配信しています。 お好きなフィードリーダーで購読してみてください。

このウェブサイトの運営や著者の活動を支援していただける方を募集しています。 もしよろしければ、Buy Me a Coffee からサポート(投げ銭)していただけると、著者の活動のモチベーションに繋がります✨
Amazonでほしいものリストも公開しているので、こちらからもサポートしていただけると励みになります。

#python