明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 939|回复: 12

[源码] 百度翻译api的利用方法

[复制链接]
发表于 2024-6-26 11:18:42 | 显示全部楼层 |阅读模式

忘记从哪里找的代码拼凑的百度翻译,感兴趣的可以拿去试试,需要自己申请百度api
https://fanyi-api.baidu.com/product/113
YC:MD5这个函数是哪个大神的代码,有知道的麻烦说一下,我好注明出处
输入(baidu-translate "HELLO WORLD")
输出"{\"from\":\"en\",\"to\":\"zh\",\"trans_result\":[{\"src\":\"HELLO
WORLD\",\"dst\":\"\\u4f60\\u597d\\u4e16\\u754c\"}]}"
  1. (defun baidu-translate(str)
  2. (setq appid "2022100800*******"
  3.   salt "143*******"
  4.   key "b9A6Eyw00P1jJ*******"
  5. )
  6. (setq sign(YC:MD5 (strcat appid str salt key)))
  7. (progn
  8.   (vl-load-com)
  9.   (setq obj(vlax-create-object (strcat"win""http"".win""http""request.5.1")))
  10.   (vlax-invoke obj'open "get" (strcat "http://api.fanyi.baidu.com/api/trans/vip/translate?q="
  11.                  str "&from=en&to=zh&appid="appid "&salt="salt "&sign="sign
  12.                 ):vlax-true)
  13.   (vlax-invoke obj'send)
  14.   (vlax-invoke obj 'WaitforResponse 1000)  
  15.   (setq dst(vlax-get obj 'ResponseText))  
  16. )
  17. )


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2024-6-27 02:25:14 | 显示全部楼层
被承包的东子 发表于 2024-6-26 18:26
salt 是什么,随便填一个随机数么

签名生成方法
签名是为了保证调用安全,使用 MD5 算法生成的一段字符串,生成的签名长度为 32 位,签名中的英文字符均为小写格式。

生成方法:
Step1. 将请求参数中的 APPID(appid), 翻译 query(q,注意为UTF-8编码),随机数(salt),以及平台分配的密钥(可在管理控制台查看) 按照 appid+q+salt+密钥的顺序拼接得到字符串 1。
Step2. 对字符串 1 做 MD5 ,得到 32 位小写的 sign。
注:
1. 待翻译文本(q)参数需为 UTF-8 编码;
2. 在生成签名拼接 appid+q+salt+密钥 字符串时,q 不需要做 URL encode,在生成签名之后,发送 HTTP 请求之前才需要对要发送的待翻译文本字段 q 做 URL encode;
3.如遇到报 54001 签名错误,请检查您的签名生成方法是否正确,在对 sign 进行拼接和加密时,q 不需要做 URL encode,很多开发者遇到签名报错均是由于拼接 sign 前就做了 URL encode;
4.在生成签名后,发送 HTTP 请求时,如果将 query 拼接在URL上,需要对 query 做 URL encode。
发表于 2024-6-27 08:02:27 | 显示全部楼层
nuan1989 发表于 2024-6-27 02:25
签名生成方法
签名是为了保证调用安全,使用 MD5 算法生成的一段字符串,生成的签名长度为 32 位,签名 ...

谢谢回复,我后来知道salt是随机数了,想在问问,这个salt我自己随便定义一个,不用每次使用都生成一个吧
 楼主| 发表于 2024-6-27 09:18:42 | 显示全部楼层
被承包的东子 发表于 2024-6-27 08:02
谢谢回复,我后来知道salt是随机数了,想在问问,这个salt我自己随便定义一个,不用每次使用都生成一个吧

可以每次生成,也可以默认,每次生成是为了你的密钥安全,我是自己用所以不在意
发表于 2024-6-26 18:09:32 | 显示全部楼层
厉害厉害,学习到了
发表于 2024-6-26 18:26:19 | 显示全部楼层
本帖最后由 被承包的东子 于 2024-6-26 18:29 编辑

salt 是什么,随便填一个随机数么

点评

去搜索一下百度api就知道了.  发表于 2024-6-27 02:23
发表于 2024-6-27 11:01:08 | 显示全部楼层
求助,怎么正确的转汉字的MD5码啊,
发表于 2024-6-27 12:30:44 | 显示全部楼层
这对于我们小白,不知道怎么弄,能不能有高人把他弄好,出个教程,那就太感谢了
 楼主| 发表于 2024-6-27 13:13:36 | 显示全部楼层
被承包的东子 发表于 2024-6-27 11:01
求助,怎么正确的转汉字的MD5码啊,

我是翻译英文所以没有编码问题,你要把中文翻译为其它语言那你得转换中文字符的编码,所以这个可能不适合你
发表于 2024-7-11 16:49:09 | 显示全部楼层
好像用不了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-9-24 11:28 , Processed in 0.201115 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表