当前位置: 首页 > article >正文

调用百度云API机器翻译

新建Python文件,叫

text_translator.py

输入

import requests
import jsonAPI_KEY = "glYiYVF2dSc7EQ8n78VDRCpa"  # 替换为自己的API Key
SECRET_KEY = "kUlhze8OQZ7xbVRp"  # 替换为自己的Secret Keydef main():# 选择翻译方向while True:direction = input("请选择翻译方向(输入1: 中译英,输入2: 英译中):").strip()if direction == '1':from_lang, to_lang = 'zh', 'en'breakelif direction == '2':from_lang, to_lang = 'en', 'zh'breakelse:print("输入错误,请重新输入!")# 输入待翻译文本(支持多行输入)print("\n请输入需要翻译的文本(输入完成后请输入'END'并回车):")text_lines = []while True:line = input()if line.strip().upper() == 'END':breaktext_lines.append(line)original_text = '\n'.join(text_lines)if not original_text.strip():print("错误:输入的文本不能为空!")return# 调用翻译APItry:url = f"https://aip.baidubce.com/rpc/2.0/mt/texttrans/v1?access_token={get_access_token()}"payload = json.dumps({"from": from_lang,"to": to_lang,"q": original_text}, ensure_ascii=False)headers = {'Content-Type': 'application/json','Accept': 'application/json'}response = requests.post(url, headers=headers, data=payload.encode('utf-8'))response.raise_for_status()  # 检查HTTP状态码是否正常result = response.json()if 'error_code' in result:print(f"\n翻译失败!错误码:{result['error_code']},错误信息:{result['error_msg']}")else:translated_text = result['result']['trans_result'][0]['dst']print("\n翻译结果:")print(translated_text)except requests.exceptions.RequestException as e:print(f"\n网络请求异常:{str(e)}")except KeyError as e:print(f"\n解析结果失败,可能API返回格式变化:{str(e)}")except Exception as e:print(f"\n发生未知错误:{str(e)}")def get_access_token():"""获取API访问凭证"""url = "https://aip.baidubce.com/oauth/2.0/token"params = {"grant_type": "client_credentials","client_id": API_KEY,"client_secret": SECRET_KEY}try:response = requests.post(url, params=params)response.raise_for_status()return response.json().get("access_token")except Exception as e:print(f"获取access_token失败:{str(e)}")return Noneif __name__ == '__main__':main()

运行结果如图

http://www.lryc.cn/news/2379987.html

相关文章:

  • 大模型训练计算显存占用
  • uni-app学习笔记六-vue3响应式基础
  • 亚远景-ASPICE与ISO 21434在汽车电子系统开发中的应用案例
  • 『已解决』Python virtualenv_ error_ unrecognized arguments_--wheel-bundle
  • 详细介绍一下Python连接MySQL数据库的完整步骤
  • 【Unity 2023 新版InputSystem系统】新版InputSystem 如何进行人物移动(包括配置、代码详细实现过程)
  • 单片机-STM32部分:13-1、编码器
  • 机器学习第十二讲:特征选择 → 选最重要的考试科目做录取判断
  • 关于我在使用stream().toList()遇到的问题
  • javascript 编程基础(2)javascript与Node.js
  • Spring Boot 集成 druid,实现 SQL 监控
  • 多卡跑ollama run deepseek-r1
  • HTML向四周扩散背景
  • 基于Java在高德地图面查询检索中使用WGS84坐标的一种方法-以某商场的POI数据检索为例
  • 使用 Terraform 创建 Azure Databricks
  • 本地部署dify+ragflow+deepseek ,结合小模型实现故障预测,并结合本地知识库和大模型给出维修建议
  • SECERN AI提出3D生成方法SVAD!单张图像合成超逼真3D Avatar!
  • 深入探索:Core Web Vitals 进阶优化与新兴指标
  • c/c++的opencv开闭操作
  • 【物联网】 ubantu20.04 搭建L2TP服务器
  • winrar 工具测试 下载 与安装
  • PLC组网的方法、要点及实施全解析
  • 网络安全深度解析:21种常见网站漏洞及防御指南
  • 【FAQ】HarmonyOS SDK 闭源开放能力 —Vision Kit (3)
  • Java大厂面试实战:Spring Boot与微服务场景中的技术点解析
  • 从零启动 Elasticsearch
  • 比较两个用于手写体识别的卷积神经网络(CNN)模型
  • Linux利用多线程和线程同步实现一个简单的聊天服务器
  • 【计网】作业5
  • 15、Python布尔逻辑全解析:运算符优先级、短路特性与实战避坑指南