GithubHelp home page GithubHelp logo

adrian-valente / translate-python Goto Github PK

View Code? Open in Web Editor NEW

This project forked from terryyin/translate-python

0.0 1.0 0.0 156 KB

Online translation as a Python module & command line tool. No key, no authentication needed.

License: MIT License

Python 94.19% Nix 2.42% Makefile 3.39%

translate-python's Introduction

Translate Tool in Python

PyPI latest PyPI Version PyPI License Docs Travis Build Status

Translate is a simple but powerful translation tool written in python with with support for multiple translation providers. By now we offer integration with Microsoft Translation API, Translated MyMemory API, LibreTranslate, and DeepL's free and pro APIs

Why Should I Use This?

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

Installation

$ pip install translate

Or, you can download the source and

$ python setup.py install

Prefix 'sudo' if you encounter a problem.

Features

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

Usage

In your command-line:

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

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

Or

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

Options

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

  Python command line tool to make online 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    Generate 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             Set 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:

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

The cfg is not for use 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 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 or DeepL>'
In [4]: translator = Translator(provider='<the name of the provider, eg. microsoft or deepl>', to_lang=to_lang, secret_access_key=secret)
In [5]: translator.translate('the book is on the table')
Out [5]: '碗是在桌子上。'

The DeepL Provider

To use DeepL's pro API, pass an additional parameter named pro to the Translator object and set it to True and use your pro authentication key as the secret_access_key

In: translator = Translator(provider='microsoft', to_lang=to_lang, secret_access_key=secret, pro=True)

Documentation

Check out the latest translate documentation at Read the Docs

Contributing

Please send pull requests, very much appreciated.

  1. Fork the repository on GitHub.
  2. Make a branch off of master and commit your changes to it.
  3. (Optional) if you want an isolated environment, you can install nixOS (https://nixos.org) and run nix-shell --pure under the project folder
  4. Install requirements. pip install -r requirements-dev.txt
  5. Install pre-commit. pre-commit install
  6. Run the tests with py.test -vv -s
  7. Create a Pull Request with your contribution.

translate-python's People

Contributors

adrian-valente avatar azin-z avatar bolkin avatar cleberzavadniak avatar cruderags avatar feetstv avatar godiard avatar hanxiaomax avatar kamiel79 avatar karimk123 avatar kxrob avatar magnunleno avatar michalisioak avatar mketab avatar mutabilitas avatar naveenfogat avatar pj-finlay avatar pringon avatar rhenter avatar terryyin avatar thesage21 avatar timgates42 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.