Utilisez l'API de traduction Python Baidu pour implémenter la traduction en cantonais
Supposons que vous développiez une application multilingue ou que vous ayez besoin de traduire entre les langues. L'une des exigences courantes est d'implémenter la traduction du cantonais vers d'autres langues. Dans cet article, nous utiliserons le langage de programmation Python et l'API Baidu Translation pour atteindre cet objectif.
Tout d'abord, assurez-vous d'avoir déjà un compte API Baidu Translate, d'avoir créé une application et obtenu une clé API. Si vous n'avez pas de compte, vous pouvez créer un nouveau compte sur la plateforme ouverte de traduction Baidu.
Ensuite, nous utiliserons la bibliothèque requests
pour envoyer des requêtes HTTP à l'API de traduction Baidu et analyser les données JSON renvoyées. Assurez-vous que la bibliothèque requests
est installée. Sinon, vous pouvez l'installer en utilisant la commande suivante : 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”以实现粤语翻译为英语。你可以根据自己的需要将目标语言代码更改为其他语言。
appid
和secret_key
是你从百度翻译开放平台获得的API密钥,将它们替换为你自己的密钥。
在translate
函数的主体中,我们生成一个随机的盐值salt
,并将appid
、text
、salt
和secret_key
连接在一起形成待签名的字符串。然后,我们对待签名的字符串进行MD5哈希计算得到签名值sign
。
最后,我们将参数以GET请求的方式发送到百度翻译API的URL,并解析返回的JSON数据。我们提取出翻译结果中的目标语言文本dst
text = input('请输入要翻译的文本:') translated_text = translate(text, 'en') print('翻译结果:', translated_text)
rrreee
Ci-dessus. Dans le code, la fonctiontranslate
accepte deux paramètres : text
est le texte à traduire, et to_lang
est le code de la langue cible. Dans cet exemple, nous définissons le code de la langue cible sur « en » pour la traduction du cantonais vers l'anglais. Vous pouvez modifier le code de la langue cible vers d'autres langues selon vos besoins.
appid
et secret_key
sont les clés API que vous obtenez de Baidu Translation Open Platform, remplacez-les par vos propres clés. Dans le corps de la fonction translate
, nous générons une valeur de sel aléatoire salt
et ajoutons appid
, text
, salt
et secret_key
sont concaténés ensemble pour former la chaîne à signer. Ensuite, nous effectuons un calcul de hachage MD5 sur la chaîne à signer pour obtenir la valeur de signature sign
. 🎜🎜Enfin, nous envoyons les paramètres à l'URL de l'API Baidu Translation dans une requête GET et analysons les données JSON renvoyées. Nous extrayons le texte de la langue cible dst
du résultat de la traduction et le renvoyons comme résultat de la fonction. 🎜🎜Voici un programme principal utilisant l'exemple de code ci-dessus : 🎜rrreee🎜Enregistrez le code ci-dessus en tant que fichier de script Python et exécutez-le. Le programme vous demandera de saisir le texte que vous souhaitez traduire, puis d'afficher les résultats de la traduction. 🎜🎜Dans cet article, nous utilisons le langage de programmation Python et l'API de traduction Baidu pour implémenter la fonction de traduction cantonaise. Vous pouvez modifier et étendre le code en fonction de vos besoins pour réaliser une traduction entre plusieurs langues. 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!