![見出し画像](https://assets.st-note.com/production/uploads/images/71612550/rectangle_large_type_2_ec917a78e7391968e2fee401f47a2442.png?width=1200)
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
メールアドレスとクレジットで認証なので、クレジットいっぱい持ってる人は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 スプレッドシート
使い方わからん人はお気軽にご連絡ください🙆