如何使用现有的翻译api来翻译html,json文件

目前比较成熟的翻译服务有:deepl,google, 有道,百度,必应 并且他们都有自己的一套api,本身也会支持网页翻译,但是这些api收费都比较贵。基础api可用,但是基础api 翻译字符受限,并且不支持html, json文件翻译。
先直接上官网体验地址:https://web-tools.cn/translate/。
本文主要讲解如何使用现有的这些api服务来翻译网页,json技术。

以下以google 翻译为准:

语种:en
<div class="name is">my name is team</div>
目标语种:ja
<divclass = "nameis">私の名前はチームです</ div>

翻译结果标签被强制去掉了空格,class包含的样式也被翻译,很明显,不符合期望。
如何才能做到标签不被翻译呢?我们继续下面的实验:
首先,我们将标签用特殊标记替换,最终再替换回来,如下:

# 将<div class="name is"> 替换为 1000-1 ,</div> 替换为1000-2,并且添加换行
1000-1 
my name is team 
1000-2
翻译结果:
1000-1
私の名前はチームです
1000-2

如果我们将1000-1 替换回去,就会发现我们翻译成功了!

原理:

  1. 为什么要用数字?
    因为数字不会被翻译,最好使用比较长的数字,并且可标志。
  2. 为什么要用换行?
    在多个语种中尝试过,如果不换行,翻译api会根据前后文关系,将标签位置被替换或者被翻译
  3. 如何替换标签,复原翻译结果:
    可以先将转换标签先保存到一个对象中,当翻译完成后,将这些大数字替换回去。

以上的翻译方案,还存在着不足,后续文章继续完善。
如果对以上的技术方案有疑问,扣扣:1796958708,我这里有一套更完善的免费翻译api,当前已经翻译过上万文章,并且一直很稳定。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值