通过百度翻译翻译四国语言

在日常开发工作中,如果需要多语言,很多时候就需要在线翻译,通常是简体中文翻译为英文、日文,繁体中文。

如果对翻译要求结果不高,使用百度翻译即可,而翻译一个字段点来点去,实在是烦人,特此写了个脚本,请在百度翻译界面 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
posted @   DHclly  阅读(225)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示