translate

发布时间 2023-09-14 18:46:48作者: linux星

教程

命令行

在命令行中:

$ translate-cli -t zh "This is a pen."

Translation: 这是一支笔
-------------------------
Translated by: MyMemory

$ translate-cli -t zh "This is a pen." -o
这是一支笔

选项

$ translate-cli --help
Usage: __main__.py [OPTIONS] TEXT...

  Python command line tool to make on line translations

  Example:

       $ translate-cli -t zh the book is on the table
       碗是在桌子上。

  Available languages:

       https://en.wikipedia.org/wiki/ISO_639-1
       Examples: (e.g. en, ja, ko, pt, zh, zh-TW, ...)

Options:
  --version                 Show the version and exit.
  --generate-config-file    Generated the config file using a Wizard and exit.
  -f, --from TEXT           Sets the language of the text being translated.
                            The default value is 'autodetect'.
  -t, --to TEXT             Sets the language you want to translate.
  -p, --provider TEXT       Set the provider you want to use. The default
                            value is 'mymemory'.
  --secret_access_key TEXT  Set the secret access key used to get provider
                            oAuth token.
  -o, --output_only         Set to display the translation only.
  --help                    Show this message and exit.

更改默认语言

在 ~/.python-translate.cfg:

[DEFAULT]
from_lang = autodetect
to_lang = de
provider = mymemory
secret_access_key =

cfg 不能用作 Python 模块。

或运行命令行并按照以下步骤操作:

$ translate-cli --generate-config-file
Translate from [autodetect]:
Translate to: <language you want to translate>
Provider [mymemory]:
Secret Access Key []:

据我所知,国家代码遵循 https://en.wikipedia.org/wiki/ISO_639-1

用作 Python 模块

In [1]: from translate import Translator
In [2]: translator= Translator(to_lang="zh")
In [3]: translation = translator.translate("This is a pen.")
Out [3]: 这是一支笔

结果在翻译中,它通常是一个 unicode 字符串。

使用其他翻译提供程序

In [1]: from translate import Translator
In [2]: to_lang = 'zh'
In [3]: secret = '<your secret from Microsoft>'
In [4]: translator = Translator(provider='microsoft', to_lang=to_lang, secret_access_key=secret)
In [5]: translator.translate('the book is on the table')
Out [5]: '碗是在桌子上。'