分享一篇关于谷歌翻译免费调用的技巧吧

背景:最近在做翻译的功能,需求是批量翻译前端的大块 json。之前方案是使用谷歌的翻译 v2 接口,结果公司前端高峰期一个月能干到 5000 美刀:lark_085: 。然后找到了类似页面的谷歌翻译的免费接口(不过对比付费版 v2 似乎没那么智能)。

实现思路:
下面贴一段 curl 直接放到 postman 或 apifox 可以直接使用,注意必须开国外代理。

curl --location --request GET 'https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=en&dt=t&q = 你好 ' \
--header 'pragma: no-cache' \
--header 'priority: u=1, i' \
--header 'x-browser-channel: stable'

然后返回的数据他纯是一段 arr 类型的,所以需要去自己提取想要的内容。由于调用这个接口需要国外代理,如果部署国内服务器理论上是 ping 不通的。这边推荐使用 vercel 做一层域名转发,具体实现可以询问 AI。

[
    [
        [
            "Hello",
            "你好",
            null,
            null,
            10
        ]
    ],
    null,
    "zh-CN",
    null,
    null,
    null,
    1,
    [],
    [
        [
            "zh-CN"
        ],
        null,
        [
            1
        ],
        [
            "zh-CN"
        ]
    ]
]

下面贴上我在 vscode 开发的一款插件,不放链接了有需求的佬可以自行下载,当初开发这个插件的初衷是看了一圈没有找到免费翻译的插件,有时候一些命名或者 md 文档单词不认识的时候用这个插件还是很方便的:tieba_007: (以至于现在一直都不更新了哈哈哈)

34 个赞

感谢大佬了

2 个赞

谢谢佬友分享的技巧。

1 个赞

谢大佬了

这个对我来说还是不错的!

1 个赞

感谢分享

1 个赞

现在都上大模型了,这种专门的翻译,没大模型质量好

1 个赞

针对一些网站做国际化没特殊要求的,其实走AI翻译有点浪费tokens了

2 个赞

感谢分享

我记得这个接口质量不如translateHtml :bili_117:

3 个赞

我用着挺稳定的呀 感觉这种公开的其实都差不多的吧

有点牛。

1 个赞

指的是翻译的质量 谷歌翻译接口质量下降 · Issue #225 · fishjar/kiss-translator · GitHub

先收藏再说

这个接口翻译质量会有问题,现在的Google Translate的JSON RPC中会有一个加密的header x-goog-batchexecute-bgr 用来防止逆向和滥用,如果验证成功会走到正常的翻译,如果这个header有问题的话会走到一个降级的翻译模型,翻译质量会变得非常差。
现有的解决方案一般是走Chrome网页翻译的 https://translate-pa.googleapis.com/v1/translateHtml 接口,这个接口返回的结果比降级的那个结果会更好一点,但也是Google的上一代NMT模型。
目前的Google Translate网页端和App端对于目标语言是中文的场景已经实装了Gemini驱动的翻译,这个的翻译效果是最好的,但需要 x-goog-batchexecute-bgr。逆向困难的话可以考虑接无头浏览器使用。

2 个赞

佬们厉害:+1:

感谢其他佬友的补充,学到了

1 个赞

感谢大佬了