見出し画像

DeepL API 連携

なんちゃってエンジニアの私が、久しぶりにコードを触った件。
ゴリゴリの開発はもう全くできないのですが、めんどくさがりすぎて、DeepL API とGoogleスプレッドシートをGAS(Google App Script)で連携させてみた。

細かいことはいいから連携したスプレッドシートくれという人は、目次の1,2を実施してください。DeepL APIキーを取得すれば使えるスプレッドシートを記事の最後に置いとくので、それをコピーして使ってください!

経緯
Google翻訳よりDeepL翻訳の方が優秀っぽいので、DeepL翻訳をGoogleスプレッド―シート自動翻訳することに。DeepL APIが公開されてるのでGASで連携してみました。

1.DeepL APIアカウント登録

こちらからDeepL API Freeに登録。
Freeは以下の制限
・1か月あたり500,000文字の上限あり

※クレジット登録を求められるが、自分で有料プランにしなければ勝手に取られることはないとのことです。

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

画像1

メールアドレスとクレジットで認証なので、クレジットいっぱい持ってる人はFreeのアカウント複数作成できそうだけど、いい子はしちゃダメだそ★とのことです。

2.DeepL API 認証キーの取得

登録したアカウントでログインして認証キーを取得します。
アカウント情報の画面下部にありました。(最初は何か作成とかだったかも?

認証キー

3.GoogleスプレッドシートのGASに記述

GASにこちらをそのままコピペして、2行目のDEEPLAPIKEYを2で取得した認証キーに書き換えれば完了!

//DeepL
const DEEPLAPIKEY='1234567-1234-abcd-1234-12345abcd123:fx';

function deeplJaToEn(text) {
 var response = UrlFetchApp.fetch("https://api-free.deepl.com/v2/translate?auth_key="+DEEPLAPIKEY+"&text=" + text + "&target_lang=EN");
 var json = response.getContentText();
 var data = JSON.parse(json);
 var result = data.translations[0].text;
 return (result);
}
function deeplEnToJa(text) {
 var response = UrlFetchApp.fetch("https://api-free.deepl.com/v2/translate?auth_key="+DEEPLAPIKEY+"&text=" + text + "&target_lang=JA");
 var json = response.getContentText();
 var data = JSON.parse(json);
 var result = data.translations[0].text;
 return (result);
}

4.Googleスプレッドシート内に関数を記述

A2のセルに英語原文をコピーするなら、B2とかのセルに下記関数を記述。

英語を日本語へ
=deeplEnToJa(A2)
日本語を英語へ
=deeplJaToEn(A2)

5.テンプレ-Googleスプレッドシート配布

コピーして、シートの所定の位置にDeepL API認証キーを貼り付けてご利用ください★

【配布用】DeepLAPI連携 - Google スプレッドシート

使い方わからん人はお気軽にご連絡ください🙆



この記事が参加している募集

つくってみた

やってみた

この記事が気に入ったらサポートをしてみませんか?