pypapago

[Unofficial] Python wrapper for Papago translation service


Keywords
papago, pypi-package, translate
License
MIT
Install
pip install pypapago==0.1.1.1

Documentation

THIS PROJECT is ARCHIVED!

This project is no longer maintained by the author. No additional support is provided.

If you're still interested in the Papago's translation service, plz follow the direction below:

https://developers.naver.com/docs/papago/papago-nmt-overview.md


pypapago codecov

Unofficial python wrapper for papago translate service.

Install

pip install -U pypapago

Usage

Basic usage (English to Korean)

from pypapago import Translator

translator = Translator()

result = translator.translate('I am GROOT')
print(result) # ๋‚˜๋Š” ๊ทธ๋ฃจํŠธ๋‹ค

Set Source/Target Language

from pypapago import Translator

translator = Translator()

result = translator.translate(
    '์นด์นด์˜ค๋Š” ํŒŒํŒŒ๊ณ ๋ฅผ ์ข‹์•„ํ•ด',
    source='ko',
    target='en',
)
print(result) # Kakao likes papago.

Supported Language Codes

Code Desc
ko Korean
en English
ja Japanese
zh-CN Chinese
zh-TW Chinese traditional
es Spanish
fr French
vi Vietnamese
th Thai
id Indonesia

Bulk Translation

Parallel bulk translation with Multiprocessing.

from pypapago import Translator

translator = Translator()

result = translator.bulk_translate(['apple', 'banana'])
print(result) # ['์‚ฌ๊ณผ', '๋ฐ”๋‚˜๋‚˜']

You can also set how many workers to run manually.

(The more workers make your code faster but requires more system resources.)

Default to CPU Cores (HyperThreading = x2)

  • ex) Run with 2cores
from pypapago import Translator

translator = Translator()

result = translator.bulk_translate(
    ['apple', 'banana'], 
    workers=2
)
print(result) # ['์‚ฌ๊ณผ', '๋ฐ”๋‚˜๋‚˜']

Verbose output

If you need raw result from papago API, you can set verbose to True.

from pypapago import Translator

translator = Translator()

result = translator.translate('I am GROOT', verbose=True)
print(result) # RAW JSON Result
#{'delay': 400,
# 'delaySmt': 400,
# 'dict': {'items': [{'entry': '<b>I</b>',
# ...
# 'translatedText': '๋‚˜๋Š” ๊ทธ๋ฃจํŠธ๋‹ค'}
#}

Detail results may change.