Skip to main content

Translators is a library which aims to bring free, multiple, enjoyable translation to individuals and students in Python.

Project description

PyPI - Version PyPI - License PyPI - Python PyPI - Status PyPI - Wheel Downloads


Translators is a library which aims to bring free, multiple, enjoyable translation to individuals and students in Python. It based on the translation interface of Google, Yandex, Microsoft(Bing), Baidu, Alibaba, Tencent, NetEase(Youdao), Sogou, Kingsoft(Iciba), Iflytek, Deepl, Reverso, Itranslate, Caiyun, Argos, TranslateCom, etc.

Installation

From PyPI

# Windows, Mac, Linux
pip install translators --upgrade

# Linux javascript runtime environment:
# https://nodejs.org/en/download/

From Source

git clone https://github.com/UlionTse/translators.git
cd translators
python setup.py install

Getting Started

import translators as ts

wyw_text = '季姬寂,集鸡,鸡即棘鸡。棘鸡饥叽,季姬及箕稷济鸡。'
chs_text = '季姬感到寂寞,罗集了一些鸡来养,鸡是那种出自荆棘丛中的野鸡。野鸡饿了唧唧叫,季姬就拿竹箕中的谷物喂鸡。'
html_text = '''
<!DOCTYPE html>
<html>
<head>
    <title>这是标题</title>
</head>
<body>
<p>这是文章《你的父亲》</p>
</body>
</html>
'''

## language
# input languages
print(ts.google(wyw_text)) # default: from_language='auto', to_language='en'
# output language_map
print(ts._google.language_map)

## professional field
print(ts.alibaba(wyw_text, professional_field='general')) # ("general","message","offer")
print(ts.baidu(wyw_text, professional_field='common')) # ('common','medicine','electronics','mechanics')
print(ts.caiyun(wyw_text, from_language='zh', professional_field=None)) # ("medicine","law","machinery")

## property
rs = [ts.tencent(x) for x in [wyw_text, chs_text]]
print(ts._tencent.query_count)
print(dir(ts._tencent))

## requests
print(ts.youdao(wyw_text, sleep_seconds=5, timeout=None, proxies=None))

## host
# cn
print(ts.google(wyw_text, if_use_cn_host=True))
print(ts.bing(wyw_text, if_use_cn_host=False))
# reset host
print(ts.google(wyw_text, reset_host_url=None))
print(ts.yandex(wyw_text, reset_host_url=None))

## detail result
print(ts.sogou(wyw_text, is_detail_result=True))

## translate html
print(ts.translate_html(html_text, translator=ts.google, to_language='en', n_jobs=-1))

## others
print(ts._argos.host_pool)
print(ts.argos(wyw_text, reset_host_url=None))

## help
help(ts.google)

Issues

Linux Runtime Environment

  1. To support javascript runtime environment, you should Download | Node.js.
  2. PS, ts.baidu() does not work on Linux without desktop.

Supported Country and Region Service

  1. If you have requests error, please check whether this service is provided in your country or region.
  2. Check the website about eg: help(ts.google).

HttpError 4xx

  1. Please check whether you made high frequency requests.
  2. Please check whether this service is provided in your country or region.
  3. Detail to solve HttpError itself.
  4. Please issue me, thanks.

RequestsError or ProxyError

  1. Check whether the advanced version of requests you have installed can access the site properly. If not, try lowering the version or otherwise.
  2. Check that agents are enabled on your computer. If it is enabled, try turning it off or otherwise.

More About Translators

Features

Translator Number of Supported Languages Advantage
Iciba 187 support the most languages in the world
Google 109 support more languages in the world
Bing 102 support more languages in the world
Yandex 100 support more languages in the world, support word to emoji
Itranslate 100 support translation of different regions but the same language differences, such as en_US, en-UK, en-AU
Iflytek 70 support more languages in the world
Sogou 61 support more languages in the world
reverso 42 popular on Mac and Iphone
Baidu 28 support main languages, support professional field
Deepl 24 high quality to translate but response slowly
Tencent 17 support main languages
Argos 17 support main languages , open-source
Youdao 15 support main languages, high quality
Alibaba 12 support main languages, support professional field
Caiyun 6 high quality to translate but response slowly, support professional field
TranslateCom - from Microsoft

Support Language

Language Language of Translator Google Yandex Bing Baidu Alibaba Tencent Youdao Sogou Deepl Caiyun Argos Iciba Iflytek Itranslate reverso TranslateCom
english en Y Y Y Y Y Y Y Y Y Y Y ... ... ... ... ...
chinese zh Y Y Y Y Y Y Y Y Y Y Y
arabic ar Y Y Y Y(ara) Y Y Y Y Y
russian ru Y Y Y Y Y Y Y Y Y Y Y
french fr Y Y Y Y(fra) Y Y Y Y Y Y Y
german de Y Y Y Y Y Y Y Y Y
spanish es Y Y Y Y(spa) Y Y Y Y Y Y Y
portuguese pt Y Y Y(pt/pt-pt) Y Y Y Y Y Y Y
italian it Y Y Y Y Y Y Y Y Y Y
japanese ja Y Y Y Y(jp) Y Y Y Y Y Y
korean ko Y Y Y Y(kor) Y Y Y Y
greek el Y Y Y Y Y Y
dutch nl Y Y Y Y Y Y Y
hindi hi Y Y Y Y Y Y
turkish tr Y Y Y Y Y Y Y
malay ms Y Y Y Y Y
thai th Y Y Y Y Y Y Y
vietnamese vi Y Y Y Y(vie) Y Y Y Y Y
indonesian id Y Y Y Y Y Y Y Y
hebrew he Y(iw) Y Y Y
polish pl Y Y Y Y Y Y Y
mongolian mn Y Y Y(nm)
czech cs Y Y Y Y Y Y
hungarian hu Y Y Y Y Y Y
estonian et Y Y Y Y(est) Y Y
bulgarian bg Y Y Y Y(bul) Y Y
danish da Y Y Y Y(dan) Y Y
finnish fi Y Y Y Y(fin) Y Y
romanian ro Y Y Y Y(rom) Y Y
swedish sv Y Y Y Y(swe) Y Y
slovenian sl Y Y Y Y(slo) Y Y
persian/farsi fa Y Y Y Y
bosnian bs Y Y Y(bs-Latn) Y(bs-Latn)
serbian sr Y Y Y(sr-Latn/sr-Cyrl) Y(sr-Latn/sr-Cyrl)
fijian fj Y Y
filipino tl Y Y Y(fil) Y(fil)
haitiancreole ht Y Y Y Y
catalan ca Y Y Y Y
croatian hr Y Y Y Y
latvian lv Y Y Y Y Y
lithuanian lt Y Y Y Y Y
urdu ur Y Y Y Y
ukrainian uk Y Y Y Y
welsh cy Y Y Y Y
tahiti ty Y Y
tongan to Y Y
swahili sw Y Y Y Y
samoan sm Y Y Y
slovak sk Y Y Y Y Y
afrikaans af Y Y Y Y
norwegian no Y Y Y Y
bengali bn Y Y Y(bn-BD) Y
malagasy mg Y Y Y Y
maltese mt Y Y Y Y
queretaro otomi otq Y Y
klingon/tlhingan hol tlh Y Y
gujarati gu Y Y Y
tamil ta Y Y Y
telugu te Y Y Y
punjabi pa Y Y Y
amharic am Y Y
azerbaijani az Y Y
bashkir ba Y
belarusian be Y Y
cebuano ceb Y Y
chuvash cv Y
esperanto eo Y Y
basque eu Y Y
irish ga Y Y Y
emoji emj Y
... ...

More supported language, eg:

# request once first, then:
print(ts._google.language_map)

About Chinese Language

Language Language of Translator Google Yandex Bing Baidu Alibaba Tencent Youdao Sogou Iciba Iflytek Caiyun Deepl Argos Itranslate reverso TranslateCom
Chinese(简体) zh-CHS Y(zh-CN) Y(zh) Y(zh-Hans) Y(zh) Y(zh) Y(zh) Y Y Y(zh) Y(zh) Y(zh) Y(zh) Y(zh) Y(zh-CN) Y(zh/chi) ...
Chinese(繁体) zh-CHT Y(zh-TW) Y(zh-Hant) Y(cht) Y(zh-TW) Y Y(cnt) Y(zh-TW)
Chinese(文言文) wyw Y
Chinese(粤语) yue Y Y Y Y Y Y(zh-HK)
Chinese(内蒙语) mn N[外蒙] N[外蒙] Y[内蒙] N[外蒙]
Chinese(维吾尔语) uy Y
Chinese(藏语) ti Y
Chinese(白苗文) mww Y Y Y
Chinese(彝语) ii Y
Chinese(苗语) hmn Y

License

MIT Llicense

Project details


Release history Release notifications | RSS feed

This version

5.1.0

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

translators-5.1.0-py3-none-any.whl (25.8 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