AWS使用Python翻译大型HTML



我有一个HTML格式的大文本,需要使用Amazon Translate API翻译成不同的语言(它需要是AWS,没有使用其他服务的选项(。

亚马逊每次通话要翻译的字符限制在5000个左右,所以我需要将大文本"拆分"成句子。

在HTML中,我有许多标签,如DIV、IMG、链接、粗体和斜体标签等。

这是我的实际方法:

  1. 获取HTML文本并通过Python HTMLParser进行传递
  2. 如果打开的标签是<p>,则获取数据(使用handle_data函数(
  3. 在总共少于5000个字符的句子中"拆分"数据
  4. 翻译每个"少于5000个字符"的句子块,并将它们合并成一个大的翻译文本
  5. 用翻译后的文本重建HTML

这里的问题是,我不知道如何重建HTML,以及如何识别<p>中的<a>, <b>, <i>, <img>等标签。

还有其他方法或解决方案吗?

如果您有示例代码,那就太好了,因为我不知道如何覆盖解析器的handle函数

提前谢谢。

对于指定的用例,当它是一个单独的、不是很大的文件,并且您需要立即响应时,translate_text方法应该可以。

如果你有很多HTML文件,你可以使用StartTextTranslationJob的批量翻译作业

  1. 将一组文档存储在AmazonS3内部的输入文件夹中铲斗
  2. 启动批量翻译作业
  3. 作为您请求的一部分,请为Amazon Translate提供IAM角色其具有对输入的Amazon S3文件夹的读取访问权限。角色必须还具有对输出AmazonS3存储桶的读写访问权限
  4. 监视批处理翻译作业的进度
  5. 从指定的中检索批处理翻译作业的结果输出铲斗

点击此处查看更多信息https://docs.aws.amazon.com/translate/latest/dg/async.html

最新更新