Maison >développement back-end >Golang >Utilisation du langage Go pour développer l'API de traduction Baidu afin de réaliser une traduction mutuelle entre le chinois et l'ukrainien
Utilisez le langage go pour développer l'API de traduction Baidu afin de réaliser une traduction mutuelle entre le chinois et l'ukrainien
Dans cet article, nous présenterons comment utiliser le langage go pour développer un programme simple permettant de réaliser une traduction mutuelle entre le chinois et l'ukrainien via l'API de traduction Baidu. Nous montrerons comment utiliser le langage Go pour envoyer des requêtes API, analyser les données JSON renvoyées et fournir des exemples de code complets pour référence.
L'API de traduction Baidu est un outil très utile qui peut nous aider à réaliser des traductions entre plusieurs langues. Dans cet article, nous utiliserons le langage go pour écrire un programme simple permettant de traduire du chinois vers l'ukrainien et de l'ukrainien vers le chinois via l'API de traduction Baidu.
Tout d'abord, nous devons créer un compte sur Baidu Open Platform et créer une application pour obtenir la clé d'accès API. Après avoir obtenu la clé secrète, nous pouvons commencer à écrire notre programme.
Tout d'abord, nous devons importer certains packages nécessaires :
import ( "encoding/json" "fmt" "io/ioutil" "net/http" )
Ensuite, nous devons définir quelques constantes pour stocker les informations liées à l'API de traduction Baidu :
const ( apiUrl = "https://fanyi-api.baidu.com/api/trans/vip/translate" appId = "your_app_id" appKey = "your_app_key" )
Veuillez remplacer your_app_id
et your_app_key
avec l'ID d'application et la clé sous votre propre compte. your_app_id
和your_app_key
替换为你自己账号下的应用ID和秘钥。
接下来,我们定义一个Translation
结构体,用于存储翻译结果:
type Translation struct { From string `json:"from"` To string `json:"to"` TransResult []struct { Src string `json:"src"` Dst string `json:"dst"` } `json:"trans_result"` }
然后,我们定义一个Translate
函数,用于进行翻译:
func Translate(text string, fromLang string, toLang string) (string, error) { // 构建请求URL reqUrl := fmt.Sprintf("%s?q=%s&from=%s&to=%s&appid=%s&salt=1435660288&sign=%s", apiUrl, text, fromLang, toLang, appId, appKey) // 发送请求 resp, err := http.Get(reqUrl) if err != nil { return "", err } defer resp.Body.Close() // 读取返回的数据 body, err := ioutil.ReadAll(resp.Body) if err != nil { return "", err } // 解析JSON数据 var result Translation err = json.Unmarshal([]byte(body), &result) if err != nil { return "", err } // 返回翻译结果 return result.TransResult[0].Dst, nil }
最后,我们可以编写一个main
函数来调用Translate
Translation
pour stocker les résultats de la traduction : func main() { text := "你好,世界!" // 中文到乌克兰文 dst, err := Translate(text, "zh", "uk") if err != nil { fmt.Println("翻译失败:", err) return } fmt.Println("中文到乌克兰文的翻译结果:", dst) // 乌克兰文到中文 dst, err = Translate(dst, "uk", "zh") if err != nil { fmt.Println("翻译失败:", err) return } fmt.Println("乌克兰文到中文的翻译结果:", dst) }Ensuite, nous définissons une fonction
Translate
pour la traduction : rrreee
Enfin, nous pouvons écrire une fonctionmain
pour appeler la fonction Translate
et imprimer le résultat de la traduction : 🎜rrreee🎜En exécutant le code ci-dessus, nous pouvons voir le texte chinois "Hello, World was!" traduit avec succès en ukrainien. Ensuite, en traduisant à nouveau sur la base des résultats de la traduction ukrainienne, nous pouvons réussir à le traduire en chinois. 🎜🎜Dans cet article, nous expliquons comment utiliser le langage go pour développer un programme simple permettant de réaliser une traduction mutuelle entre le chinois et l'ukrainien via l'API de traduction Baidu. Nous avons utilisé le package HTTP du langage go pour envoyer des requêtes API et utilisé le package encoding/json pour analyser les données JSON renvoyées. L’exemple de code complet peut être trouvé dans la section code de cet article. J'espère que cet article vous aidera ! 🎜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!