1. 程式人生 > >Goalng 對接Google翻譯

Goalng 對接Google翻譯

本文主要內容是使用GO語言,對接Google翻譯,主要流程如下:

  1. 環境配置
  2. 程式碼編寫
  3. 建立金鑰以及配置
  4. 啟用翻譯雲服務
  5. 配額和限制
  6. 語言支援列表
  7. 相關網址

一 環境配置

對於GO語言的環境配置,這裡就不再贅述,其他部落格有詳細的教程,請自行查詢。

開發環境時windows。

1 安裝翻譯所需要的庫

go get -u cloud.google.com/go/translate

二 程式碼編寫

package main

import (
        "fmt"
        "log"

        // 匯入Google翻譯需要的庫
        "cloud.google.com/go/translate"
        "golang.org/x/net/context"
        "golang.org/x/text/language"
)

func main() {
        ctx := context.Background()

        // 建立一個客戶端
        client, err := translate.NewClient(ctx)
        if err != nil {
                log.Fatalf("Failed to create client: %v", err)
        }

        // 需要查詢的文字內容
        text := "Hello, world!"
        // 需要翻譯的語言,詳情檢視第六節(語言支援列表)
        target, err := language.Parse("zh")
        if err != nil {
                log.Fatalf("Failed to parse target language: %v", err)
        }

        // 引數:上下文,翻譯內容(陣列格式,支援多條翻譯)
        translations, err := client.Translate(ctx, []string{text}, target, nil)
        if err != nil {
                log.Fatalf("Failed to translate text: %v", err)
        }

        fmt.Printf("Text: %v\n", text)
        fmt.Printf("Translation: %v\n", translations[0].Text)
}

三 建立金鑰以及配置

到了這一步,上面的程式是能夠編譯通過,但是不能執行,還需要配置金鑰:

  1. 轉到GCP控制檯中頁面。
  2. 服務帳戶下拉列表中選擇 新建服務帳戶。
  3. 服務帳戶名稱欄位中輸入一個名稱
  4. 角色下拉列表中,選擇專案 > 所有者。
  5. 點選建立後,會下載一個json檔案,最好將這個檔案放在我們的專案目錄下(其他目錄也可以),然後設定在我們系統的環境變數中,新增一個變數名為:GOOGLE_APPLICATION_CREDENTIALS,為我們json檔案路徑(PATH)的環境變數。

 Linux 或者Mac如下:

export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

例子:

export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"

Windows下直接在系統變數裡面配置,或者使用一下命令配置都可以:

$env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

例子:

$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\[FILE_NAME].json"

四 啟用翻譯雲服務

這裡還需要啟用翻譯的雲服務,不然我們還是不能使用翻譯功能:具體啟用方式如下:
  1. 在控制檯介面,在左邊列表中,選擇API和服務--》資訊中心

2. 在API列表介面,選擇Cloud translation API,點選進去,啟用改伺服器就可以,如果Google賬號沒有經過認證,前期需要使用銀行卡進行驗證,這裡就不再贅述了。首次使用這些API伺服器,會有一年的免費使用時間,並且還有300美金的費用可以使用。


五 配額和限制

當我們的免費額度沒有後,需要按照一下計費規則付費:


六 語言支援列表

LanguageISO-639-1 Code
Afrikaansaf
Albaniansq
Amharicam
Arabicar
Armenianhy
Azeerbaijaniaz
Basqueeu
Belarusianbe
Bengalibn
Bosnianbs
Bulgarianbg
Catalanca
Chinese (Simplified)
Chinese (Traditional)
Corsicanco
Croatianhr
Czechcs
Danishda
Dutchnl
Englishen
Esperantoeo
Estonianet
Finnishfi
Frenchfr
Frisianfy
Galiciangl
Georgianka
Germande
Greekel
Gujaratigu
Haitian Creoleht
Hausaha
Hebrewiw
Hindihi
Hungarianhu
Icelandicis
Igboig
Indonesianid
Irishga
Italianit
Japaneseja
Javanesejw
Kannadakn
Kazakhkk
Khmerkm
Koreanko
Kurdishku
Kyrgyzky
Laolo
Latinla
Latvianlv
Lithuanianlt
Luxembourgishlb
Macedonianmk
Malagasymg
Malayms
Malayalamml
Maltesemt
Maorimi
Marathimr
Mongolianmn
Myanmar (Burmese)my
Nepaline
Norwegianno
Nyanja (Chichewa)ny
Pashtops
Persianfa
Polishpl
Portuguese (Portugal, Brazil)pt
Punjabipa
Romanianro
Russianru
Samoansm
Scots Gaelicgd
Serbiansr
Sesothost
Shonasn
Sindhisd
Sinhala (Sinhalese)si
Slovaksk
Sloveniansl
Somaliso
Spanishes
Sundanesesu
Swahilisw
Swedishsv
Tagalog (Filipino)tl
Tajiktg
Tamilta
Telugute
Thaith
Turkishtr
Ukrainianuk
Urduur
Uzbekuz
Vietnamesevi
Welshcy
Xhosaxh
Yiddishyi
Yorubayo
Zuluzu

七 相關網址:

1 官網程式碼Demo以及環境配置和金鑰申請地址:

https://cloud.google.com/translate/docs/reference/libraries?hl=zh-CN#client-libraries-install-go

2 語言支援列表:

https://cloud.google.com/translate/docs/languages?hl=zh-CN