大家好!今天我来介绍一种使用Go语言进行谷歌翻译的简单方法。在副业过程中,我发现需要将韩语翻译成汉语,以便群友更容易理解公告内容。最初考虑使用deepL,但是在使用其API时遇到了一些问题。于是我找到了一个非常简单的Go库,能够轻松实现谷歌翻译:https://github.com/bregydoc/gtranslate。
例子
这个库非常简单,只有两个方法可供使用:Translate
和TranslateWithParams
。其中,TranslateWithParams
方法还提供了一些可选参数,但对于简单的翻译任务,我们只需要使用From
和To
参数即可。
下面是一个简单的例子,将英文的 "Hello,World!" 翻译成中文、日文和韩文,并与网页版的谷歌翻译结果进行对比:
package main import ( "fmt" "github.com/bregydoc/gtranslate" "golang.org/x/text/language" ) func main() { text := "Hello,World!" ja, err := translate(text, language.English.String(), language.Japanese.String()) if err != nil { panic(err) } fmt.Printf("en: %s | ja: %s \\n", text, ja) ch, err := translate(text, language.English.String(), language.Chinese.String()) if err != nil { panic(err) } fmt.Printf("en: %s | ch: %s \\n", text, ch) kr, err := translate(text, language.English.String(), language.Korean.String()) if err != nil { panic(err) } fmt.Printf("en: %s | kr: %s \\n", text, kr) } func translate(text string, src, dst string) (string, error) { translated, err := gtranslate.TranslateWithParams( text, gtranslate.TranslationParams{ From: src, To: dst, }, ) return translated, err }
输出结果如下:
en: Hello,World! | ja: こんにちは世界!
en: Hello,World! | ch: 你好世界!
en: Hello,World! | kr: 안녕하세요, 월드!
与网页版谷歌翻译的结果完全一致:
日语:こんにちは世界!
中文:你好世界!
韩文:안녕하세요, 월드!
使用Go语言实现谷歌翻译如此简单,希望这个例子能够帮助大家在自己的项目中实现类似的功能。如果你对这个库感兴趣,不妨去GitHub上查看更多详细信息。