百度/字节API翻译英文

百度/字节API翻译使用
更新于: 2024-03-11 20:40:36

核心代码

import os
import hashlib
import random
import requests

# 定义默认值
defaults = {
    "q": "apple",
    "salt": str(random.random()),
    "appid": os.getenv("BAIDU_FANYI_APP_ID"),
    "secret": os.getenv("BAIDU_FANYI_APP_SECRET"),
}

def fanyi_api_sign(in_options):
    # 将输入的选项加入到默认值中
    options = defaults.copy()
    options.update(in_options)

    # 提取出变量
    q = options["q"]
    salt = options["salt"]
    secret = options["secret"]
    appid = options["appid"]

    # 计算签名并添加到选项中
    res = appid + q + salt + secret
    m = hashlib.md5()
    m.update(res.encode())
    sign = m.hexdigest()
    options["sign"] = sign

    return options

def translate(in_options):
    # 计算签名添加到选项中
    options = fanyi_api_sign(in_options)
    url = 'http://api.fanyi.baidu.com/api/trans/vip/translate'
    r = requests.get(url, params=options)
    return r.json()


res = translate({"q": "apple", "from": "en", "to": "zh"})

print(res)

字节

参考