通过百度翻译翻译四国语言
在日常开发工作中,如果需要多语言,很多时候就需要在线翻译,通常是简体中文翻译为英文、日文,繁体中文。
如果对翻译要求结果不高,使用百度翻译即可,而翻译一个字段点来点去,实在是烦人,特此写了个脚本,请在百度翻译界面 F12 打开控制台使用:
let translateCn = function (text) {
location.href = "https://fanyi.baidu.com/#zh/zh/";
var getResult = function (lang, cb) {
var output = document.querySelector(".target-output");
var btnSelect = document.querySelector(".select-to-language");
btnSelect.click();
var langItems = document.querySelectorAll(".lang-table .lang-item");
langItems = Array.prototype.slice.apply(langItems);
var btnLang = null;
if (lang === "cn") {
btnLang = langItems.find((o) => o.innerText === "中文(简体)");
}
if (lang === "cht") {
btnLang = langItems.find((o) => o.innerText === "中文(繁体)");
}
if (lang === "jp") {
btnLang = langItems.find((o) => o.innerText === "日语");
}
if (lang === "en") {
btnLang = langItems.find((o) => o.innerText === "英语");
}
if (output != null) {
output.innerText = "";
}
btnLang.click();
btnTrans.click();
var idx = setInterval(() => {
if (output != null && output.innerText.length > 0) {
clearInterval(idx);
cb(output.innerText);
} else {
output = document.querySelector(".target-output");
}
}, 30);
};
var input = document.querySelector("#baidu_translate_input");
var btnTrans = document.querySelector("#translate-button");
input.value = text;
var transResult = {
cn: "",
cht: "",
jp: "",
en: "",
};
transResult.cn = text;
getResult("cht", function (result2) {
transResult.cht = result2;
getResult("jp", function (result3) {
transResult.jp = result3;
getResult("en", function (result4) {
transResult.en = result4;
console.clear();
console.log("简体中文:",transResult.cn);
console.log("繁体中文:",transResult.cht);
console.log("日文:",transResult.jp);
console.log("英文:",transResult.en);
});
});
});
};
使用方式:
目前只考虑了简体中文翻译为其他语言
translateCn("苹果树下的雪花");
结果:
简体中文: 苹果树下的雪花
繁体中文: 蘋果樹下的雪花
日文: リンゴの木の下の雪
英文: Snowflakes under Apple Trees
版权声明:本文为DHclly原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。