👘

DeepL APIのPHPライブラリが公開してたらしいわよ

2022/07/01に公開

ごきげんようでございますわ。(お嬢様言葉が流行ってるらしいので便乗)
DeepLの開発者アカウントのメールマガジンが届いててどうやら4月に翻訳サービスのDeepLのAPI公式PHPライブラリがリリースされてたらしいんですの。
特につまずくこともないでしょうけどだあれも書いてなかったのですからメモ。

https://github.com/DeepLcom/deepl-php

導入・APIリミット

普通のライブラリ同様Composer経由で導入するんですの。

$ composer require deeplcom/deepl-php

APIキー

DeepL APIは無料プランだと「1ヶ月50万文字を無料」で使えますわよ。クレジットカードの登録が必須で、デビットでも登録できたわ。

APIキーはアカウントタブから取得。

なお、DeepLのAPIを使っているアカウントでは排他的に通常の翻訳が使えなくなるので適宜ログアウトするとよいんですの。

最も簡単な使い方

Docsを参考によろしくてよ。紳士淑女の方はPHPDotEnvなどでAPIキーを管理すると良いですわね。

simple.php
<?php
require_once('./vendor/autoload.php');
use DeepL\Translator;

$authKey = "0c91a0fd-a801-3641-c9f4-6b0287a92f78:fx"; 
$translator = new Translator($authKey);

$result = $translator->translateText('蓼食う虫も好き好き', null, 'en-US');
echo $result->text; 

// $ php simple.php
// there's no accounting for taste

第2引数にnullを渡すと自動で翻訳元の言語を認識してくれるらしいですわ!

ドキュメントファイル翻訳

パワポやワード・PDFとかのドキュメントファイルもまるごと翻訳できるらしいわよ。

document.php
<?php
$translator = new Translator($authKey);
try {
    $translator->translateDocument(
        'input.docx',
        'output.docx',
        'ja',
        'en-US',
    );
} catch (\DeepL\DocumentTranslationException $error) {
	// エラー処理
}

リミットチェック

check.php
<?php
$translator = new Translator($authKey);
$result = $translator->getUsage();
/**
object(DeepL\Usage)#6 (3) {
  ["character"]=>
  object(DeepL\UsageDetail)#5 (2) {
    ["count"]=>
    int(31)
    ["limit"]=>
    int(500000)
  }
  ["document"]=>
  NULL
  ["teamDocument"]=>
  NULL
}
**/

その他Translatorコンストラクタの第2引数にタイムアウト等の設定も指定できるらしいんですの。

お嬢様言葉の変換

最後に。すべて以下のサービスで文章を変換しまじた。お嬢様というかなんというか…圧倒的白井黒子感。
面白いけど意味わからんわ國學院…

https://www2.kokugakuin.ac.jp/nihongo/ojyo.html

Discussion