0
(0)

目前雖然 Google Cloud 有贈送 300 美元的初始額度,但這個額度的時效只有三個月。即使您沒有用完這 300 美元的初始額度,在三個月後也會失效。對於只需要使用 Google 翻譯服務的使用者來說,是否有辦法免費使用 Google Translate 翻譯 API 呢?答案是有的!

您可以直接調用 translate.googleapis.com 的 API,因為這個 API 是 Google Chrome 翻譯擴展內部使用的,並且不需要身份驗證。您也可以將這個腳本部署為 Web 應用程序,並使用源語言和目標語言以及文本查詢的參數,還可以指定任何 ISO 語言對或u將目標語言設置auto,Google 翻譯 API 將自動檢測源文本的語言。

/* Written by Amit Agarwal */
/* web: ctrlq.org          */

function doGet(e) {
  var sourceText = '';
  if (e.parameter.q) {
    sourceText = e.parameter.q;
  }

  var sourceLang = 'auto';
  if (e.parameter.source) {
    sourceLang = e.parameter.source;
  }

  var targetLang = 'zh-tw';
  if (e.parameter.target) {
    targetLang = e.parameter.target;
  }

  /* Option 1 */

  var translatedText = LanguageApp.translate(sourceText, sourceLang, targetLang);

  /* Option 2 */

  var url =
    'https://translate.googleapis.com/translate_a/single?client=gtx&sl=' +
    sourceLang +
    '&tl=' +
    targetLang +
    '&dt=t&q=' +
    encodeURI(sourceText);

  var result = JSON.parse(UrlFetchApp.fetch(url).getContentText());

  translatedText = result[0][0][0];

  var json = {
    sourceText: sourceText,
    translatedText: translatedText,
  };

  // set JSONP callback
  var callback = 'callback';
  if (e.parameter.callback) {
    callback = e.parameter.callback;
  }

  // return JSONP
  return ContentService.createTextOutput(callback + '(' + JSON.stringify(json) + ')').setMimeType(
    ContentService.MimeType.JAVASCRIPT
  );
}

這是一個使用 Google Apps Script 創建的 Google Translate  翻譯 API。以下是代碼的解釋:

  • doGet(e) 函数是這個腳本的主要功能。它將 HTTP GET 請求作為一個參數 e,並返回翻譯結果。
  • sourceText 變量是要翻譯的文本字符串。如果 URL 中包含參數 q,則使用該參數的值。否則,sourceText 變量將保持為空字符串。
  • sourceLang 變量是源語言代碼。如果 URL 中包含參數 source,則使用該參數的值。否則,sourceLang 變量將保持為 auto,表示自動檢測源語言。
  • targetLang 變量是目標語言代碼。如果 URL 中包含參數 target,則使用該參數的值。否則,targetLang 變量將保持為 ja,表示日語。
  • LanguageApp.translate() 函數是 Google Apps Script 提供的翻譯功能。它接受三個參數:源文本、源語言代碼和目標語言代碼。這是使用這個函數進行翻譯的選擇之一。
  • 使用 UrlFetchApp.fetch() 函数發送 HTTP GET 請求到 translate.googleapis.com API,該 API 是 Google Chrome 翻譯擴展內部使用的。這是使用這個 API 進行翻譯的選擇之一。
  • JSON.parse() 函數將從 API 返回的 JSON 字符串解析為 JavaScript 對象。
  • translatedText 變量是翻譯後的文本字符串。這是從 LanguageApp.translate() 函數或 UrlFetchApp.fetch() 函數返回的結果中獲取的。
  • json 變量是一個包含源文本和翻譯後文本的 JavaScript 對象。
  • callback 變量是 JSONP 回調函數的名稱。如果 URL 中包含參數 callback,則使用該參數的值。
  • ContentService.createTextOutput() 函数創建一個包含 JSONP 響應的 ContentService 對象。
  • setMimeType() 函数設置 ContentService 對象的 MIME 類型為 JavaScript。
  • 函数返回 JSONP 響應,其中包含源文本和翻譯後文本的 JSON 對象。

這篇文章對你有幫助嗎?

給個5星好評吧?

感謝支援《波哥分享》原創文章!

原文標題:低調使用!免費的Google Translate 翻譯 API

原文網址:https://www.booooker.com/314.html

平均分 0 / 5. 評價計數: 0

還沒有人評價哦~

抱歉喲~如果您覺得不好,可以聯絡我們進行質量提升喲!

期待您的反饋

Tell us how we can improve this post?

猜你喜歡

轉載請保留原文連結:https://www.booooker.com/314.html
  1. 本站所有文章,如無特殊說明或標註,均為本站原創釋出。在未徵得本站同意時,禁止複製、盜用、採集、釋出本站內容。
  2. 本站資源僅供研究、學習交流之用,若使用商業用途,請購買正版授權,否則產生的一切後果將由下載使用者自行承擔。
  3. 如若本站內容侵犯了原著者的合法權益,可聯絡我們進行處理。 聯絡方式(#替換成@):info#booooker.com