eggplants/deepl-cli

DeepL Translator CLI (without API Key)

deepl‑cli – DeepL Translator 用コマンドライン・ラッパー

概要 – 有料の DeepL API キーを必要とせずに、ターミナル(または Python コード)から DeepL ウェブ翻訳機を呼び出すことができる、非常に小さな Python パッケージです。Playwright を使用して DeepL のウェブサイトを操作し、翻訳結果を抽出して表示します。

重要性 – 翻訳は、多くの AI 駆動ワークフロー(例:ドキュメントのローカライズ、多言語コーパスの前処理、またはクイック・ルックアップ・ツールの構築)における一般的なダウンストリーム・タスクです。セットアップ不要の CLI があれば、API に登録することなく、シェルや CI パイプラインで翻訳をスクリプト化できます。

入手方法 – PyPI からインストールしてください:

pip install deepl-cli

このパッケージは playwright を依存関係として含んでおり、初回実行時に必要なブラウザ・バイナリを自動的にダウンロードします。

典型的なコマンドライン使用法

# 英語から日本語へ短い文字列を翻訳する
$ deepl -F en -T ja -s <<< 'This tool is useful for me.'
このツールは私にとって役に立ちます。

# ファイルから読み込んで翻訳する
$ deepl -f mytext.txt -F en -T fr

主なフラグ:

  • -F / --fr – ソース言語(または DeepL に自動検出させる場合は auto)。
  • -T / --to – ターゲット言語(多くの ISO スタイルのコードがサポートされています)。
  • -sstdin からソーステキストを読み込む。
  • -f – ファイルの内容を翻訳する。
  • --no-headless – ブラウザのウィンドウを表示する(デバッグに便利です)。
  • -t – ミリ秒単位のタイムアウト。

Python API – スクリプトに翻訳機能を組み込みたい場合:

from deepl import DeepLCLI

translator = DeepLCLI('en', 'ja')
print(translator.translate('hello'))   # → こんにちは

asyncio コード用に非同期バリアント (translate_async) も用意されています(examples/async.py を参照)。

制限事項 – 公開されている DeepL のサイトをスクレイピングするため、人間のユーザーと同じレート制限や利用規約の対象となります。大量の処理や商用ワークロードには、公式の DeepL API(README は deepl-python を指しています)への切り替えを推奨します。

ライセンス – MIT、そのため他のツールへの組み込みや自由な改変が可能です。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト