Rumah >pembangunan bahagian belakang >Golang >Gunakan bahasa go dan API terjemahan Baidu untuk menterjemah bahasa Cina dan Melayu kepada satu sama lain

Gunakan bahasa go dan API terjemahan Baidu untuk menterjemah bahasa Cina dan Melayu kepada satu sama lain

PHPz
PHPzasal
2023-08-06 17:12:30669semak imbas

Gunakan bahasa Go dan API Terjemahan Baidu untuk mencapai terjemahan bersama antara Bahasa Cina dan Bahasa Melayu

1. Pengenalan

Dengan perkembangan globalisasi, komunikasi bahasa menjadi semakin penting. Bagi pembangun, alat terjemahan yang berkuasa menjadi sangat kritikal apabila membina aplikasi berbilang bahasa. Artikel ini akan memperkenalkan cara menggunakan bahasa Go dan API Terjemahan Baidu untuk mencapai terjemahan bersama antara bahasa Cina dan Melayu.

2. Persediaan

Sebelum bermula, kita perlu melakukan beberapa persiapan.

2.1 Dapatkan kunci API Terjemahan Baidu

Kami perlu terlebih dahulu mendaftar akaun Platform Terbuka Terjemahan Baidu dan membuat aplikasi untuk mendapatkan kunci API.

2.2 Pasang persekitaran bahasa Go

Pastikan anda telah memasang persekitaran bahasa Go dengan betul. Jika ia belum dipasang, anda boleh memuat turunnya dari tapak web rasmi dan ikut arahan untuk memasangnya.

2.3 Pasang pakej pergantungan yang berkaitan

Kami perlu menggunakan perpustakaan permintaan HTTP untuk menghantar permintaan dan mendapatkan respons. Jalankan arahan berikut dalam terminal untuk memasang pakej kebergantungan yang sepadan:

go get github.com/parnurzeal/gorequest

3 Tulis kod

3.1 Import pakej kebergantungan dan tetapkan pembolehubah global

Pertama, kita perlu mengimport pakej kebergantungan yang diperlukan dan tetapkan pembolehubah global. Cipta fail main.go dalam fail projek dan salin kandungan berikut ke dalamnya:

package main

import (
    "fmt"
    "github.com/parnurzeal/gorequest"
    "encoding/json"
)

const (
    API_KEY = "你的API密钥"
)

type TranslationResponse struct {
    ErrorCode int      `json:"error_code"`
    ErrorMsg  string   `json:"error_msg"`
    TransResult []struct {
        Src  string `json:"src"`
        Dest string `json:"dst"`
    } `json:"trans_result"`
}

3.2 Laksanakan fungsi terjemahan

Seterusnya, kami akan melaksanakan fungsi terjemahan mudah. Tambahkan kod berikut dalam fail main.go:

func TranslateText(text, from, to string) (string, error) {
    url := fmt.Sprintf("https://fanyi-api.baidu.com/api/trans/vip/translate?q=%s&from=%s&to=%s&appid=%s&salt=1435660288&sign=47b8a70a0d9acde1b6734f61e5c4a8e1", text, from, to, API_KEY)

    request := gorequest.New()
    resp, _, errs := request.Get(url).End()

    if errs != nil {
        return "", errs[0]
    }

    var translationResp TranslationResponse

    decoder := json.NewDecoder(resp.Body)
    if err := decoder.Decode(&translationResp); err != nil {
        return "", err
    }

    return translationResp.TransResult[0].Dest, nil
}

3.3 Uji fungsi terjemahan

Akhir sekali, kami akan menulis fungsi ujian mudah untuk mengesahkan fungsi terjemahan. Tambahkan kod berikut pada penghujung fail main.go:

func main() {
    text := "你好,世界!"
    from := "zh"
    to := "ms"

    translation, err := TranslateText(text, from, to)
    if err != nil {
        fmt.Println("翻译失败:", err)
        return
    }

    fmt.Println("翻译结果:", translation)
}

4 Jalankan projek

4.1 Susun projek

Dalam terminal, masukkan direktori akar fail projek dan jalankan arahan berikut untuk menyusun fail. projek:

go build

4.2 Jalankan projek

Laksanakan arahan berikut untuk menjalankan projek:

./project_name

5. Kesimpulan

Dengan menggunakan bahasa Go dan API Terjemahan Baidu, kami berjaya mencapai terjemahan bersama antara bahasa Cina dan Melayu. Anda boleh mengembangkannya mengikut keperluan untuk melaksanakan fungsi terjemahan antara lebih banyak bahasa. Semoga artikel ini dapat membantu anda!

Atas ialah kandungan terperinci Gunakan bahasa go dan API terjemahan Baidu untuk menterjemah bahasa Cina dan Melayu kepada satu sama lain. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn