Google Translate的API调用
由于经常用到谷歌翻译,而每次切换到网页又觉得耗费时间,所以决定自己写一个小工具来用,于是就去查询了一番谷歌翻译的API,但是看到都说是API已经开始收费了,但还是有人通过网页爬出了网页翻译的API但是利用起来比较繁琐。之后又找到了一个简单的API,如下:
fun translate(text: String, source: String = "auto", target: String = "zh-CN"): Pair<String, String> {
val textChecked = if (text.isBlank()) "null" else URLEncoder.encode(text, "utf8")
val userAgent = "Mozilla/5.0"
val url = "https://translate.googleapis.com/translate_a/single?client=gtx&sl=$source&tl=$target&dt=t&q=$textChecked"
val connection = URL(url).openConnection().apply { setRequestProperty("User-Agent", userAgent) }
val raw = connection.getInputStream().use { it.readBytes() }.toString(Charset.forName("utf8"))
val p1 = raw.indexOf(&#