Maison > développement back-end > Golang > Écrivez l'API de traduction Baidu en langue Go pour implémenter les fonctions de traduction chinoise et africaine.

Écrivez l'API de traduction Baidu en langue Go pour implémenter les fonctions de traduction chinoise et africaine.

WBOY
Libérer: 2023-08-05 15:45:25
original
1353 Les gens l'ont consulté

Écrire l'API de traduction Baidu en langue Go pour réaliser la fonction de traduction chinoise et africaine

Introduction :
Avec le développement de la mondialisation, la demande de langues étrangères est de plus en plus élevée, parmi lesquelles l'importance des langues chinoises et africaines ​a progressivement pris de l'importance. Dans cet article, je vais partager comment écrire en langage Go et le combiner avec l'API de traduction Baidu pour réaliser la fonction de traduction en chinois et en Afrique du Sud. Grâce à cet exemple, vous apprendrez comment ajouter une telle fonctionnalité à votre propre application.

  1. Obtenez la clé d'accès à l'API Baidu Translation
    Avant de commencer à écrire du code, nous devons nous inscrire sur le site Web de l'API Baidu Translation et obtenir la clé d'accès. Veuillez visiter le site officiel de l'API de traduction Baidu (https://fanyi-api.baidu.com/) pour vous inscrire et postuler.
  2. Créez un projet go et importez les packages de dépendances nécessaires
    Avant de commencer à écrire du code, nous devons créer un projet go et importer les packages de dépendances nécessaires. Exécutez la commande suivante dans le terminal pour créer un nouveau projet et importer les packages de dépendances pertinents :
$ mkdir baidu_translation
$ cd baidu_translation
$ go mod init github.com/<your-username>/baidu_translation
$ go get github.com/imroc/req
Copier après la connexion
  1. Écrivez le code
    Une fois l'étape 2 terminée, nous pouvons commencer à écrire le code. Créez un fichier appelé main.go dans le répertoire racine du projet et copiez-y le code suivant : main.go的文件,并将以下代码复制进去:
package main

import (
    "encoding/json"
    "fmt"
    "github.com/imroc/req"
    "os"
)

type BaiduTranslationResponse struct {
    Error     int             `json:"error"`
    ErrorCode string          `json:"error_code,omitempty"`
    From      string          `json:"from"`
    To        string          `json:"to"`
    TransResult []Translation `json:"trans_result"`
}

type Translation struct {
    Src string `json:"src"`
    Dst string `json:"dst"`
}

func main() {
    translationText := "你好世界"
    appID := "<your-app-id>"
    secretKey := "<your-secret-key>"

    resp, err := req.Post("https://fanyi-api.baidu.com/api/trans/vip/translate",
        req.Param{
            "q":     translationText,
            "from":  "zh",
            "to":    "zu",
            "appid": appID,
            "salt":  "1435660288",
            "sign":  buildSign(translationText, appID, secretKey, "1435660288"),
        },
    )

    if err != nil {
        fmt.Println("请求错误:", err)
        os.Exit(1)
    }

    var translationResponse BaiduTranslationResponse
    err = resp.ToJSON(&translationResponse)
    if err != nil {
        fmt.Println("响应解析错误:", err)
        os.Exit(1)
    }

    if translationResponse.Error != 0 {
        fmt.Println("翻译错误:", translationResponse.ErrorCode)
        os.Exit(1)
    }

    translatedText := translationResponse.TransResult[0].Dst
    fmt.Println("翻译结果:", translatedText)
}

func buildSign(translationText, appID, secretKey, salt string) string {
    signStr := appID + translationText + salt + secretKey
    return fmt.Sprintf("%x", md5.Sum([]byte(signStr)))
}
Copier après la connexion
  1. 替换访问密钥
    在代码中,将<your-app-id><your-secret-key>
  2. $ go run main.go
    Copier après la connexion
    1. Remplacez la clé d'accès
      dans le code , remplacez <your-app-id> et <your-secret-key> par la clé d'accès que vous avez demandée sur le site Web de l'API de traduction Baidu.
    Exécutez le code

    Exécutez la commande suivante dans le terminal pour exécuter le code :

    翻译结果: Sawubona Mhlaba
    Copier après la connexion
    Le résultat devrait être :

    rrreee
    Cela signifie que la traduction de "Hello World" en chinois et en africain est "Sawubona Mhlaba".

    🎜Conclusion : 🎜Cet article a écrit un exemple simple en langage Go pour montrer comment utiliser l'API de traduction Baidu pour réaliser la fonction de traduction en chinois et en Afrique du Sud. Vous pouvez étendre et optimiser cet exemple pour répondre à vos besoins individuels. J'espère que cet article vous aidera à comprendre comment utiliser le langage Go et l'API de traduction Baidu pour implémenter les fonctions de traduction chinoise et africaine. 🎜

    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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal