Goalng 對接Google翻譯
阿新 • • 發佈:2018-12-30
本文主要內容是使用GO語言,對接Google翻譯,主要流程如下:
- 環境配置
- 程式碼編寫
- 建立金鑰以及配置
- 啟用翻譯雲服務
- 配額和限制
- 語言支援列表
- 相關網址
一 環境配置
對於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) }
三 建立金鑰以及配置
到了這一步,上面的程式是能夠編譯通過,但是不能執行,還需要配置金鑰:
- 轉到GCP控制檯中的頁面。
- 從服務帳戶下拉列表中選擇 新建服務帳戶。
- 在服務帳戶名稱欄位中輸入一個名稱。
- 從角色下拉列表中,選擇專案 > 所有者。
- 點選建立後,會下載一個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"
四 啟用翻譯雲服務
這裡還需要啟用翻譯的雲服務,不然我們還是不能使用翻譯功能:具體啟用方式如下:- 在控制檯介面,在左邊列表中,選擇API和服務--》資訊中心
2. 在API列表介面,選擇Cloud translation API,點選進去,啟用改伺服器就可以,如果Google賬號沒有經過認證,前期需要使用銀行卡進行驗證,這裡就不再贅述了。首次使用這些API伺服器,會有一年的免費使用時間,並且還有300美金的費用可以使用。
五 配額和限制
當我們的免費額度沒有後,需要按照一下計費規則付費:
六 語言支援列表
Language | ISO-639-1 Code |
---|---|
Afrikaans | af |
Albanian | sq |
Amharic | am |
Arabic | ar |
Armenian | hy |
Azeerbaijani | az |
Basque | eu |
Belarusian | be |
Bengali | bn |
Bosnian | bs |
Bulgarian | bg |
Catalan | ca |
Chinese (Simplified) | |
Chinese (Traditional) | |
Corsican | co |
Croatian | hr |
Czech | cs |
Danish | da |
Dutch | nl |
English | en |
Esperanto | eo |
Estonian | et |
Finnish | fi |
French | fr |
Frisian | fy |
Galician | gl |
Georgian | ka |
German | de |
Greek | el |
Gujarati | gu |
Haitian Creole | ht |
Hausa | ha |
Hebrew | iw |
Hindi | hi |
Hungarian | hu |
Icelandic | is |
Igbo | ig |
Indonesian | id |
Irish | ga |
Italian | it |
Japanese | ja |
Javanese | jw |
Kannada | kn |
Kazakh | kk |
Khmer | km |
Korean | ko |
Kurdish | ku |
Kyrgyz | ky |
Lao | lo |
Latin | la |
Latvian | lv |
Lithuanian | lt |
Luxembourgish | lb |
Macedonian | mk |
Malagasy | mg |
Malay | ms |
Malayalam | ml |
Maltese | mt |
Maori | mi |
Marathi | mr |
Mongolian | mn |
Myanmar (Burmese) | my |
Nepali | ne |
Norwegian | no |
Nyanja (Chichewa) | ny |
Pashto | ps |
Persian | fa |
Polish | pl |
Portuguese (Portugal, Brazil) | pt |
Punjabi | pa |
Romanian | ro |
Russian | ru |
Samoan | sm |
Scots Gaelic | gd |
Serbian | sr |
Sesotho | st |
Shona | sn |
Sindhi | sd |
Sinhala (Sinhalese) | si |
Slovak | sk |
Slovenian | sl |
Somali | so |
Spanish | es |
Sundanese | su |
Swahili | sw |
Swedish | sv |
Tagalog (Filipino) | tl |
Tajik | tg |
Tamil | ta |
Telugu | te |
Thai | th |
Turkish | tr |
Ukrainian | uk |
Urdu | ur |
Uzbek | uz |
Vietnamese | vi |
Welsh | cy |
Xhosa | xh |
Yiddish | yi |
Yoruba | yo |
Zulu | zu |
七 相關網址:
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