腾讯云机器翻译接口调用
腾讯云机器翻译接口的使用
参考的腾讯云文档:机器翻译 公共参数_腾讯云以及机器翻译 签名方法_腾讯云
请求方式:POST请求
输入参数:Action,Version, Region,SourceText,Source,Target,ProjectId,Timestamp,Nonce,SecretId,Signature(注意:Signature的值是指对自己外的其他参数进行v1或者v3的加密,这里使用的是v1加密)
输出参数:TargetText,Source,Target,UsedAmount,RequestId
import requests
import hashlib
import hmac
import base64
import time
import json
def get_signature(secret_key, params):
sorted_params = sorted(params.items())
encode_str = 'POST'+'tmt.tencentcloudapi.com'+'/?'+'&'.join([f"{k}={v}" for k, v in sorted_params])
print("encode_str:"+encode_str)
hash1 = hmac.new(secret_key.encode('utf8'), encode_str.encode('utf8'), hashlib.sha1)
signature = base64.b64encode(hash1.digest())
return (signature)
def translate_text(secret_id, secret_key, text, source_lang, target_lang):
url = "https://tmt.tencentcloudapi.com"
params = {
"Action": "TextTranslate",
"Version": "2018-03-21",
"Region":"ap-beijing",
"SourceText": text,
"Source": source_lang,
"Target": target_lang,
"ProjectId": 0,
"Timestamp": int(time.time()),
"Nonce": 123455,
"SecretId": secret_id,
}
params["Signature"] = get_signature(secret_key, params)
response = requests.post(url, data=params)
return response.json()
if __name__ == '__main__':
#填写自己的secret_id,secret_id是指密匙创建的时候给的secret_id,并非APPID
secret_id = "*****************************"
#填写自己的secret_key
secret_key = "*******************************"
text = "吃葡萄不吐葡萄皮"
source_lang = "zh"
target_lang = "en"
result = translate_text(secret_id, secret_key, text, source_lang, target_lang)
print(result)
访问结果


浙公网安备 33010602011771号