ホームページ > バックエンド開発 > Golang > Go言語はBaidu翻訳APIを実装し、中国語とドイツ語の相互翻訳を実現します

Go言語はBaidu翻訳APIを実装し、中国語とドイツ語の相互翻訳を実現します

WBOY
リリース: 2023-08-06 14:15:21
オリジナル
1433 人が閲覧しました

go language は、Baidu Translation API を実装し、中国語とドイツ語の相互翻訳を実現します。

概要:
今日のグローバル化の時代において、言語コミュニケーションの必要性はますます高まっています。 Baidu Translation API は便利なオンライン翻訳サービスを提供し、高速かつ効率的なプログラミング言語である Go 言語は、Baidu Translation API を簡単に呼び出すことができます。この記事では、Go言語を使って中国語とドイツ語の相互翻訳機能を実現する簡単なプログラムを書く方法を紹介します。

準備作業:
コードを書き始める前に、Baidu Translation API の開発者アカウントを申請し、対応するアプリケーション ID とキーを取得する必要があります。具体的な適用手順については、Baidu Translation API の公式ドキュメントを参照してください。アプリケーション ID とキーを取得したら、コードの記述を開始できます。

コード例:

package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
    "net/url"
    "strings"
)

func main() {
    fromLang := "zh" // 源语言,中文
    toLang := "de"   // 目标语言,德文
    query := "你好"   // 要翻译的文本

    appID := "your_app_id"       // 替换为自己的应用ID
    appSecret := "your_app_key"  // 替换为自己的应用密钥

    apiURL := "https://fanyi-api.baidu.com/api/trans/vip/translate"

    data := url.Values{}
    data.Set("q", query)
    data.Set("from", fromLang)
    data.Set("to", toLang)
    data.Set("appid", appID)

    salt := "1435660288"
    data.Set("salt", salt)

    sign := appID + query + salt + appSecret

    // 计算签名
    sign = strings.ToLower(sign)
    sign = fmt.Sprintf("%x", sha256.Sum256([]byte(sign)))

    data.Set("sign", sign)

    req, err := http.NewRequest("POST", apiURL, strings.NewReader(data.Encode()))
    if err != nil {
        fmt.Println("Error occurred while creating request:", err)
        return
    }

    req.Header.Set("Content-Type", "application/x-www-form-urlencoded")

    client := &http.Client{}
    resp, err := client.Do(req)
    if err != nil {
        fmt.Println("Error occurred while sending request:", err)
        return
    }

    body, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        fmt.Println("Error occurred while reading response:", err)
        return
    }

    fmt.Println(string(body))
}
ログイン後にコピー

実行結果例:

{
    "from": "zh",
    "to": "de",
    "trans_result": [{
        "src": "你好",
        "dst": "Hallo"
    }]
}
ログイン後にコピー

コード分析:
上記のコードは、HTTP POST リクエストを通じて Baidu Translation API にリクエストを送信し、翻訳結果もその中で、まずソース言語、ターゲット言語、翻訳するテキストを設定します。次に、公式ドキュメントの要件に従って、リクエスト URL を結合し、符号値を計算しました。次に、HTTP リクエストを作成し、リクエスト ヘッダーの Content-Type を設定します。次に、リクエストを送信し、応答の結果を読み取ります。最後に、翻訳結果を印刷します。

概要:
Go 言語を使用すると、Baidu Translation API を簡単に呼び出して、中国語とドイツ語の相互翻訳を実現できます。実際のプロジェクトでは、必要に応じてさらに拡張や最適化を行うことができます。この記事のサンプルコードが読者の役に立ち、言語コミュニケーションのさらなる発展を促進することを願っています。

以上がGo言語はBaidu翻訳APIを実装し、中国語とドイツ語の相互翻訳を実現しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート