skip to navigation
skip to content

translate 3.5.0

This is a simple, yet powerful command line translator with google translate behind it. You can also use it as a Python module in your code.

Translate is a simple but powerful translation tool written in python with with support for multiple translation providers. By now we are integrated with Microsoft Translation API and Translated MyMemory API

Why Should I Use This?

The biggest reason to use translate is make translations in a simple way without the need of much effort and can be used as a translation tool like command line


$ pip install translate

Or, you can download the source and

$ python install

Add sudo in the beginning if you met problem.


  • Translate your outputs in real time
  • Do translation in your terminal using command line


In your command-line:

$ 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: [OPTIONS] TEXT...

  Python command line tool to make on line translations


       $ translate-cli -t zh the book is on the table

  Available languages:
       Examples: (e.g. en, ja, ko, pt, zh, zh-TW, ...)

  --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.

Change Default Languages

In ~/.python-translate.cfg:

from_lang = autodetect
to_lang = de
provider = mymemory
secret_access_key =

The cfg is not for using as a Python module.

or run the command line and follow the steps:

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

Use As A Python Module

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

The result is in translation, and it’s usually a unicode string.

Use a different translation provider

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]: '碗是在桌子上。'


Check out the latest translate documentation at Read the Docs


Please send pull requests, very much appriciated.

  1. Fork the repository on GitHub.
  2. Make a branch off of master and commit your changes to it.
  3. Install requirements. pip install -r requirements-dev.txt
  4. Install pre-commit. pre-commit install
  5. Run the tests with py.test -vv -s
  6. Create a Pull Request with your contribution



  • Add sphinx documentation
  • Update readme.


  • Makefile: Add a make release command
  • Add twine to dev requirements.


  • Refactor: Create a folder to add all providers instead to let in a single file
  • Add Microsoft provider
  • Add more documentation to all providers (Translated-MyMemory and Microsoft Translator)
  • Add arguments to change the default provider using translate-cli


  • Refactor translate-cli (command line interface) Using Click library instead of ArgParser
  • Unify translate-cli and main to avoid duplicate code
  • Add documentation to be used on helper commands on translate-cli
  • Remove unnecessary code
  • Refactor setup to complete information in the PKG-INFO used by PyPI


  • Change the license from “BEER-WARE” to MIT


  • Add multiple providers suport


  • Apply Solid Principles
  • Organize Project
  • Add pre-commit, pytest
  • Add new Make file
  • Add new test cases


  • General Refactor
  • Remove urllib to use requests
  • Refactor methods names removing google from then
  • Apply PEP8
  • Change contructor to keep it the code simple

2.0.0 (2017-11-08)

  • initial release using changes file
File Type Py Version Uploaded on Size
translate-3.5.0-py2.py3-none-any.whl (md5) Python Wheel py2.py3 2017-12-02 13KB
translate-3.5.0.tar.gz (md5) Source 2017-12-02 16KB