Skip to main content

Automatically translate the pot (`.po`) files generated by django's makemessages command built on top of python deep-translator package

Project description

django-deep-translator

Upload Python Package

Autotranslate django .po translation files package built on top of deep-translator

Installation

pip install django-deep-translator

Add 'django_deep_translator' to your INSTALLED_APPS setting:

INSTALLED_APPS = (
        ...
        'django_deep_translator',
    )

Quickstart

python manage.py translate_messages

The command finds all the generated pot (.po) files under the locale paths (LOCALE_PATHS) specified in django project settings, and translates them automatically with default source language as english.

Options

  • -f, --set-fuzzy: Set the 'fuzzy' flag on autotranslated entries
  • -l, --locale 'locale': Only translate the specified locales
  • -u, --untranslated: Only translate the untranslated messages
  • -s, --source-language: Override the default source language (en) used for translation
    python manage.py translate_messages -l 'de' -l 'es'

Settings

In your settings, list the relative path to locale folders, example:

LOCALE_PATHS = (
    'locale',
    'home/locale',
    'products/locale',
    'services/locale',
)

Using a different Translation Service:

    # default: 'django_deep_translator.services.GoogleTranslatorService'
    PO_TRANSLATOR_SERVICE = 'django_deep_translator.services.GoogleAPITranslatorService'

PO_TRANSLATOR_SERVICE accepts the following services with respective additional variables:

Service Additional variables Description
GoogleAPITranslatorService - -
MicrosoftTranslatorService MICROSOFT_TRANSLATE_KEY You need to require an api key if you want to use the microsoft translator. Visit the official website for more information about how to get one. Microsoft offers a free tier 0 subscription (2 million characters per month).
PonsTranslatorService - -
MyMemoryTranslatorService - -
YandexTranslatorService YANDEX_TRANSLATE_KEY You need to require a private api key if you want to use the yandex translator. Visit the official website for more information about how to get one
PapagoTranslatorService PAPAGO_CLIENT_ID, PAPAGO_SECRET_KEY You need to require a client id if you want to use the papago translator. Visit the official website for more information about how to get one.
DeeplTranslatorService DEEPL_TRANSLATE_KEY Visit https://www.deepl.com/en/docs-api/ for more information on how to generate your Deepl api key
QcriTranslatorService QCRI_TRANSLATE_KEY Visit https://mt.qcri.org/api/ for more information
LibreTranslatorservice LIBRE_TRANSLATE_MIRROR_URL Libre translate has multiple mirrors which can be used for the API endpoint. Some require an API key to be used. By default the base url is set to libretranslate.de .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-deep-translator-1.5.1.tar.gz (8.3 kB view hashes)

Uploaded Source

Built Distribution

django_deep_translator-1.5.1-py3-none-any.whl (9.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page