Maison  >  Article  >  développement back-end  >  Utilisation de l'API de traduction python Baidu pour implémenter la traduction cantonaise

Utilisation de l'API de traduction python Baidu pour implémenter la traduction cantonaise

王林
王林original
2023-08-04 19:49:431793parcourir

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”以实现粤语翻译为英语。你可以根据自己的需要将目标语言代码更改为其他语言。

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

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

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

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

Ci-dessous, un exemple de fonction écrite en Python pour implémenter la traduction cantonaise :

rrreee

Ci-dessus. Dans le code, la fonction translate 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!

Déclaration:
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