Maison >développement back-end >Golang >Utilisation de la langue Go et de l'API de traduction Baidu pour traduire le chinois et le tchèque entre eux
Titre : Utiliser le langage Go et l'API de traduction Baidu pour réaliser une traduction mutuelle entre le chinois et le tchèque
Résumé : Cet article présentera comment utiliser le langage Go combiné avec l'API de traduction Baidu pour réaliser une traduction mutuelle entre le chinois et le tchèque. Nous utiliserons un exemple de code pour montrer comment obtenir les informations d'identification d'accès à l'API, envoyer des demandes de traduction, analyser les résultats des réponses et fournir un code d'implémentation complet.
Avec le processus de mondialisation, la demande de traduction entre différentes langues augmente progressivement. Afin de répondre à cette demande, de nombreux fournisseurs de services de traduction automatique proposent des API de traduction IA dans diverses langues, parmi lesquelles l'API de traduction Baidu est l'une des solutions couramment utilisées. Cet article utilisera le langage Go combiné à l'API de traduction Baidu pour réaliser une traduction mutuelle entre le chinois et le tchèque.
Avant de commencer, nous devons effectuer les préparations suivantes :
Installez les bibliothèques Go nécessaires : utilisez l'outil de gestion de paquets Go pour installer les deux bibliothèques suivantes :
$ go get github.com/astaxie/beego/logs $ go get github.com/astaxie/beego/httplib
L'exemple de code suivant montre comment utiliser le langage Go et l'API de traduction Baidu pour implémenter le chinois. Tchèque Traduisez-vous les uns les autres.
package main import ( "fmt" "github.com/astaxie/beego/httplib" "github.com/astaxie/beego/logs" "net/url" "strconv" "time" ) const ( API_URL = "http://api.fanyi.baidu.com/api/trans/vip/translate" APP_ID = "your_app_id" APP_KEY = "your_app_key" FROM_LANG = "zh" TO_LANG = "cs" ) func main() { logs.SetLogger(logs.AdapterConsole) text := "你好,世界!" //中文待翻译文本 translation := Translate(text) fmt.Printf("中文翻译为捷克文: %s ", translation) // 为了演示完整性,进行反向翻译 translation = Translate(translation) fmt.Printf("捷克文翻译为中文: %s ", translation) } func Translate(text string) string { client := httplib.Get(API_URL) qs := buildQueryString(text) client.Header("Content-Type", "application/x-www-form-urlencoded") response, err := client.String() if err != nil { logs.Error("Failed to get response: %v", err) return "" } return parseResponse(response) } func buildQueryString(text string) string { qs := url.Values{} qs.Add("q", text) qs.Add("from", FROM_LANG) qs.Add("to", TO_LANG) qs.Add("appid", APP_ID) qs.Add("salt", strconv.Itoa(int(time.Now().Unix()))) sign := Sign(text, qs.Get("salt")) qs.Add("sign", sign) return qs.Encode() } func parseResponse(response string) string { // 省略解析response的代码,根据API返回结果进行处理 // 此处只做演示,具体实现需要根据百度翻译API的返回格式进行解析 return response } func Sign(text, salt string) string { // 省略计算签名的代码,详见百度翻译API文档 // 这里仅作演示,实际使用时需要进行签名计算 return text + salt }
APP_ID
et APP_KEY
par les informations d'identification obtenues lorsque vous créez une application sur la plateforme ouverte de traduction Baidu. APP_ID
和APP_KEY
为你在百度翻译开放平台上创建应用时获取到的凭证信息。FROM_LANG
和TO_LANG
FROM_LANG
et TO_LANG
par les correspondants. Code de langue. 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!