Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Menggunakan API terjemahan Baidu python untuk melaksanakan terjemahan Kantonis

Menggunakan API terjemahan Baidu python untuk melaksanakan terjemahan Kantonis

王林
王林asal
2023-08-04 19:49:431797semak imbas

Gunakan API Terjemahan Python Baidu untuk melaksanakan terjemahan Kantonis

Andaikan anda sedang membangunkan aplikasi berbilang bahasa atau perlu menterjemah antara bahasa Salah satu keperluan biasa ialah melaksanakan terjemahan daripada Kantonis ke bahasa lain. Dalam artikel ini, kami akan menggunakan bahasa pengaturcaraan Python dan API Terjemahan Baidu untuk mencapai matlamat ini.

Pertama, pastikan anda sudah mempunyai akaun Baidu Translate API, telah membuat aplikasi dan memperoleh kunci API. Jika anda tidak mempunyai akaun, anda boleh mendaftar akaun baharu pada Platform Terbuka Terjemahan Baidu.

Seterusnya, kami akan menggunakan pustaka permintaan untuk menghantar permintaan HTTP ke API Terjemahan Baidu dan menghuraikan data JSON yang dikembalikan. Pastikan anda memasang pustaka requests Jika tidak, anda boleh memasangnya menggunakan arahan berikut: requests库来向百度翻译API发送HTTP请求,并解析返回的JSON数据。确保你已经安装了requests库,如果没有安装,可以使用以下命令进行安装:

pip install requests

下面是一个使用Python编写的函数示例,用于实现粤语翻译:

import requests
import hashlib
import random
import json

def translate(text, to_lang):
    appid = 'your_app_id'
    secret_key = 'your_secret_key'

    url = 'http://api.fanyi.baidu.com/api/trans/vip/translate'

    salt = random.randint(32768, 65536)
    sign = appid + text + str(salt) + secret_key
    m1 = hashlib.md5()
    m1.update(sign.encode('utf-8'))
    sign = m1.hexdigest()

    params = {
        'q': text,
        'from': 'auto',
        'to': to_lang,
        'appid': appid,
        'salt': salt,
        'sign': sign
    }

    response = requests.get(url, params=params)
    result = json.loads(response.content.decode('utf-8'))
    translated_text = result['trans_result'][0]['dst']

    return translated_text

在上面的代码中,translate函数接受两个参数:text是要翻译的文本,to_lang是目标语言代码。在这个示例中,我们将目标语言代码设置为“en”以实现粤语翻译为英语。你可以根据自己的需要将目标语言代码更改为其他语言。

appidsecret_key是你从百度翻译开放平台获得的API密钥,将它们替换为你自己的密钥。

translate函数的主体中,我们生成一个随机的盐值salt,并将appidtextsaltsecret_key连接在一起形成待签名的字符串。然后,我们对待签名的字符串进行MD5哈希计算得到签名值sign

最后,我们将参数以GET请求的方式发送到百度翻译API的URL,并解析返回的JSON数据。我们提取出翻译结果中的目标语言文本dst

text = input('请输入要翻译的文本:')
translated_text = translate(text, 'en')
print('翻译结果:', translated_text)

Di bawah ialah contoh fungsi yang ditulis dalam Python untuk melaksanakan terjemahan Kantonis:

rrreee

Di atas. Dalam kod, fungsi terjemah menerima dua parameter: text ialah teks yang akan diterjemahkan dan to_lang ialah kod bahasa sasaran. Dalam contoh ini, kami menetapkan kod bahasa sasaran kepada "en" untuk terjemahan Kantonis ke Inggeris. Anda boleh menukar kod bahasa sasaran kepada bahasa lain mengikut keperluan anda.

appid dan secret_key ialah kunci API yang anda dapat daripada Baidu Translation Open Platform, gantikannya dengan kunci anda sendiri.

Dalam badan fungsi terjemah, kami menjana nilai garam rawak garam dan menambah appid, text , garam dan secret_key digabungkan bersama untuk membentuk rentetan yang akan ditandatangani. Kemudian, kami melakukan pengiraan cincang MD5 pada rentetan yang akan ditandatangani untuk mendapatkan nilai tandatangan tanda. 🎜🎜Akhir sekali, kami menghantar parameter ke URL API Terjemahan Baidu dalam permintaan GET dan menghuraikan data JSON yang dikembalikan. Kami mengekstrak teks bahasa sasaran dst daripada hasil terjemahan dan mengembalikannya sebagai hasil fungsi. 🎜🎜Berikut ialah atur cara utama menggunakan contoh kod di atas: 🎜rrreee🎜Simpan kod di atas sebagai fail skrip Python dan jalankannya. Program ini akan menggesa anda memasukkan teks yang ingin anda terjemah dan kemudian mengeluarkan hasil terjemahan. 🎜🎜Dalam artikel ini, kami menggunakan bahasa pengaturcaraan Python dan API Terjemahan Baidu untuk melaksanakan fungsi terjemahan Kantonis. Anda boleh mengubah suai dan melanjutkan kod mengikut keperluan anda untuk mencapai terjemahan antara lebih banyak bahasa. Harap artikel ini membantu anda! 🎜

Atas ialah kandungan terperinci Menggunakan API terjemahan Baidu python untuk melaksanakan terjemahan Kantonis. 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