Maison >développement back-end >Golang >Utilisation du langage Go et de l'API de traduction Baidu pour traduire le chinois et le roumain l'un dans l'autre
Utilisez l'API de traduction Golang et Baidu pour traduire du chinois vers le roumain
Cet article expliquera comment utiliser la langue Go et l'API de traduction Baidu pour traduire du chinois vers le roumain. Nous utiliserons l'API de traduction Baidu pour la traduction de texte et utiliserons le langage Go pour écrire un programme simple permettant d'implémenter la fonction de traduction.
L'API de traduction Baidu est une interface ouverte qui permet une traduction mutuelle entre plusieurs langues. En envoyant une requête HTTP à l'API, les résultats de la traduction du texte peuvent être obtenus. Avant de commencer, nous devons demander un compte de développeur pour l'API Baidu Translation et obtenir l'ID et la clé de l'application de l'API. Pour le processus de candidature spécifique, veuillez vous référer à la documentation officielle de l'API de traduction Baidu.
Tout d'abord, nous devons importer le package HTTP et le package JSON que nous devons utiliser.
package main import ( "encoding/json" "fmt" "io/ioutil" "net/http" "net/url" )
Ensuite, nous définissons une fonction pour implémenter la fonction de traduction de texte.
func translate(text, from, to string) (string, error) { appID := "your_app_id" // 替换为你的应用ID appKey := "your_app_key" // 替换为你的应用密钥 apiURL := "http://api.fanyi.baidu.com/api/trans/vip/translate" // 构造请求URL params := url.Values{} params.Add("q", text) params.Add("from", from) params.Add("to", to) params.Add("appid", appID) params.Add("salt", "123456") // 为了简化,我们直接指定salt sign := appID + text + "123456" + appKey sign = md5.Sum([]byte(sign)) params.Add("sign", sign) // 发送HTTP请求 resp, err := http.Get(apiURL + "?" + params.Encode()) if err != nil { return "", err } defer resp.Body.Close() // 读取响应内容 body, err := ioutil.ReadAll(resp.Body) if err != nil { return "", err } // 解析JSON响应 var result struct { TransResult []struct { Src string `json:"src"` Dst string `json:"dst"` } `json:"trans_result"` } err = json.Unmarshal(body, &result) if err != nil { return "", err } // 返回翻译结果 return result.TransResult[0].Dst, nil }
Enfin, nous écrivons une fonction principale pour tester la fonction de traduction.
func main() { // 测试文本 text := "你好,世界!" // 翻译 translated, err := translate(text, "zh", "ro") if err != nil { fmt.Println("翻译失败:", err) return } // 打印翻译结果 fmt.Println(translated) }
Enregistrez le code ci-dessus en tant que fichier go, puis compilez et exécutez le programme via la ligne de commande. Vous verrez les résultats de la traduction chinois-roumain du programme.
$ go run main.go Salut, lume!
En utilisant l'API de traduction Golang et Baidu, nous avons implémenté avec succès la fonction de traduction mutuelle entre le chinois et le roumain. Cet exemple de code peut servir de point de départ que vous pouvez étendre et personnaliser davantage selon vos besoins. J'espère que cet article vous aidera à apprendre le langage Go et l'API de traduction Baidu !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!