标题: [问题求助] 如何使用powershell 调用百度翻译 [打印本页]
作者: 5i365 时间: 2022-1-16 21:51 标题: 如何使用powershell 调用百度翻译
本帖最后由 5i365 于 2022-1-16 21:58 编辑
坛里搜索了一下, 有使用python进行翻译的, 但是年头久远,
百度找了一下资料, 发现用下面的一行CMD代码就可以实现翻译, 但是我用自己的access_token测试发现还是报错, 这个access_token的值, 可以根据官网的资料,通过API Key和Secret Key获取到, 注册并申请后, 有免费的翻译额度, 个人完全够用
下面是百度翻译官网的资料链接, 求精通的高手指点一下, 感谢!
https://ai.baidu.com/ai-doc/MT/4kqryjku9
curl -H "Content-Type: application/json" -X POST -d '{"q":"hello","from":"en","to":"zh"}' "https://aip.baidubce.com/rpc/2.0/mt/texttrans/v1?access_token=这里填写access_token"
CMD报错信息如下:
作者: flashercs 时间: 2022-1-16 22:31
需要你注册百度AI账号,并开通翻译项目就能用.
我有ps脚本,可以联系.
作者: 5i365 时间: 2022-1-16 22:36
回复 2# flashercs
感觉提醒, 我已经注册帐号了, 也取到了tk了, 但还是报错
目前用的OCR和翻译用的是天若OCR的VIP,
PS翻译代码, 不是刚需, 只是想学习一下, 看看是不是还有别的ps翻译方式,
作者: 5i365 时间: 2022-1-18 11:42
找到一段PS代码, 但是参数没有找到?- function BDTranslate{
- param(
- [string]$q,
- [string]$from='zh',
- [string]$to='en'
-
- )
-
- $appid = "你的AppId"
- $sign = '你的App密码'
-
- $salt = Get-Random
- $signtoken = "{0}{1}{2}{3}" -f $appid,$q,$salt,$sign
- $signtoken = Get-Hash -string $signtoken -algorithm MD5
- $response = Invoke-RestMethod http://api.fanyi.baidu.com/api/trans/vip/translate -Method Post -Body @{
- q=$q
- from="zh"
- to="en"
- appid=$appid
- salt=$salt
- sign = $signtoken.ToLower()
- }
- $response
- }
-
- BDTranslate -q 'PowerShell中文博客'
复制代码
作者: 5i365 时间: 2022-1-18 12:25
还找到一个超清的讲ps百度翻译的视频
https://www.ixigua.com/6830358016794034696
但是感觉可能百度认证tk改了, 真是怪了, 怎么搞就是报错, 已经提交工单了, 正在审核
作者: 5i365 时间: 2022-1-18 16:05
这个CURL问题, 百度官方工程师, 已经确认是BUG了, 让用别的方式了
作者: 5i365 时间: 2022-1-18 16:08
本帖最后由 5i365 于 2022-1-18 16:15 编辑
官方给的powershell代码,执行后结果有乱码:- $headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
- $headers.Add("Content-Type", "application/json")
- $body = "{`"q`":`"hello`",`"from`":`"en`",`"to`":`"zh`"}"
- $response = Invoke-RestMethod 'https://aip.baidubce.com/rpc/2.0/mt/texttrans/v1?access_token=获取的Tk' -Method 'POST' -Headers $headers -Body $body
- $response | ConvertTo-Json
复制代码
作者: 5i365 时间: 2022-1-18 16:09
我换成下面的方式就报错了- $headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
- $headers.Add("Content-Type", "application/json")
- $response = Invoke-RestMethod 'https://aip.baidubce.com/rpc/2.0/mt/texttrans/v1?access_token=获取的Tk' -Method 'POST' -Headers $headers -Body @{
- q = "hello"
- from = "en"
- to = "zh"
- }
- $response | ConvertTo-Json
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |