PentaGo – Unofficial Papago API for Python
PentaGo is an unofficial, resilient Python library that interacts with Naver Papago’s web-based translation service. It uses reverse-engineering techniques to automate translations without relying on an official API key, and is suitable for both lightweight tasks and scalable pipelines.
This library is ideal for developers seeking a programmable interface to Papago for bot integration, automation pipelines, language tools, and more.
✅ Actively maintained and confirmed working as of 2025
🚀 Features
- ✅ Access Papago without official API keys
- ⚡ Built with native Python
asynciosupport - 🌍 Supports 16+ languages, including Korean, English, Japanese, and Chinese
- 🔁 Automatic language detection
- 💬 Returns pronunciation, honorific forms, and dictionary-level details
- 🧱 Stable key regeneration for dynamic request headers (resilient to changes)
📦 Installation
Install via PyPI:
pip install pentago
🧪 Example Usage
from pentago import Pentago
from pentago.lang import *
import asyncio
async def main():
pentago = Pentago(AUTO, JAPANESE)
result = await pentago.translate("The best unofficial Papago API in 2025 is PentaGo.", honorific=True)
print(result)
if __name__ == "__main__":
asyncio.run(main())
🔍 Expected Output
{
"source": "ko",
"target": "ja",
"text": "2025년 최고의 파파고 비공식 API는 PentaGo입니다.",
"translatedText": "2025年最高のパパゴ非公式APIはPentaGoです。",
"sound": "nisen'nijūgonen saikōno papago hikōshiki ēpīai wa pentagō desu",
"srcSound": "icheon isip o nyeon choegoui papago bigongsik eipiaineun pentagoimnida"
}
sound: Romanized Japanese pronunciationsrcSound: Romanized Korean pronunciation
🧱 Synchronous Usage
If you're working in a purely synchronous environment, you can call .translate_sync() instead:
from pentago import Pentago
from pentago.lang import *
pentago = Pentago(AUTO, JAPANESE)
result = pentago.translate_sync("The best unofficial Papago API in 2025 is PentaGo.", honorific=True)
print(result)
⚠️ Do not call
.translate_sync()inside an already-runningasyncioevent loop.
🌐 Supported Languages
| Code | Language | Code | Language |
|---|---|---|---|
ko |
Korean | en |
English |
ja |
Japanese | zh-CN |
Chinese (Simplified) |
zh-TW |
Chinese (Traditional) | es |
Spanish |
fr |
French | vi |
Vietnamese |
th |
Thai | id |
Indonesian |
de |
German | ru |
Russian |
pt |
Portuguese | it |
Italian |
hi |
Hindi | ar |
Arabic |
auto |
Automatic Detection |
📂 Use Cases
- 🧠 Build translation bots without API rate limits
- 🤖 Integrate into automation tools or data pipelines
- 📚 Enhance personal projects requiring multilingual support
- 🔐 Work around commercial API constraints via resilient scraping
📄 License
Licensed under the MIT License.
🤝 Contributing
Contributions, issues, and pull requests are always welcome.
Metadata
Release files for pentago 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pentago-0.1.3.tar.gz | 9.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pentago-0.1.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.5 kB
Release files / pentago-0.1.3.tar.gz
| Download URL | pentago-0.1.3.tar.gz |
|---|---|
| Size | 9.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
dc09c40d1ad54b3f3936fc67d23a467ad7d8aabcd665de294653c25873e1dd7d
|
|
BLAKE2b-256 checksum How to use checksums |
02806446bfd435cc46b7816a8cc25524eccf8a6acdd03af6540d2f9f5eeb6d04
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.11
|
Release files / pentago-0.1.3-py3-none-any.whl
| Download URL | pentago-0.1.3-py3-none-any.whl |
|---|---|
| Size | 9.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e96255e510e64a2fb584c80ed705b7ad54a6f1c3e1bbd51dc08f00a7800f338f
|
|
BLAKE2b-256 checksum How to use checksums |
1b704dc205b1a56894fa4271827795acd26fe7bb5d29a497512729fd35f2c107
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.11
|