Python翻譯庫 pygtrans

pygtrans: python google translate

谷歌翻譯, 支持 APIKEY

基本功能

  • 獲取語言支持列表
  • 自動檢測語言, 支持批量
  • 文本/HTML 翻譯, 支持批量
  • 支持 TTS

安裝

環(huán)境要求: >= python 3.6

pip install pygtrans

或者

pip install pygtrans -i https://pypi.org/simple

快速入門

from pygtrans import Translate

client = Translate()
text = client.translate('Google Translate')
print(text.translatedText)  # 谷歌翻譯

基本介紹

pygtrans包中有兩個需要關心的模塊

  1. Translate: 通過谷歌翻譯API接口實現(xiàn), 可直接使用, 但可能不穩(wěn)定
  2. ApiKeyTranslate: 通過Google Cloud Translate APIs實現(xiàn), 需要提供一個有效的APIKEY, 谷歌提供免費試用

二者的差異

缺點 優(yōu)點
Translate 穩(wěn)定性無法得到保證 免費, 可直接使用
親測這貨一次性可以翻譯 10萬 個句子
ApiKeyTranslate 需要money
翻譯內容一次性最多 102400 bytes
一次性最多翻譯 128 個句子
比較穩(wěn)定
  • Translate 未作任何限制, 如果大家使用過程中出現(xiàn)問題, 請大家 留言
  • ApiKeyTranslate 的官方限制, 已在代碼中容錯, 唯一需要注意的是: 單個句子不要超過 102400 bytes

關于Null模塊

表示一個失敗的結果, 如果想判斷翻譯是否成功, 判斷返回是否為Null對象即可

from pygtrans import Translate, Null

client = Translate()
text = client.translate('Hello')
if isinstance(text, Null):
    print("翻譯失敗")
else:
    print("翻譯成功")

建議按需判斷, 一般直接使用

基本使用

使用Translate

  • 獲取支持語言: 該功能從代碼中刪除, 以 語言支持列表 方式提供
  • 語言檢測: 方法detect不支持批量檢測, 如需批量檢測請使用 translate_and_detect 方法
from pygtrans import Translate

client = Translate()
d = client.detect('你好')
assert d.language == 'zh-CN'
  • 文本翻譯: 使用translate方法, 默認就是HTML模式翻譯, 詳細參數設置請移步至 pygtrans文檔
from pygtrans import Translate

client = Translate()
text1 = client.translate('English')
assert text1.translatedText == '英語'

text2 = client.translate('喜歡', target='en')
assert text2.translatedText == 'love'

# 批量翻譯
texts = client.translate(['Hello', 'World'])
for text in texts:
    print(text.translatedText)
# 你好
# 世界

修改默認語言, 請移步至 pygtrans文檔

  • TTS: 從文本到語言
from pygtrans import Translate

client = Translate()
tts = client.tts('你好')
open('你好.mp3', 'wb').write(tts)

tts = client.tts('やめて', target='ja')
open('やめて.mp3', 'wb').write(tts)

tts = client.tts('一二三四五, 上山打老虎')
open('一二三四五.mp3', 'wb').write(tts)

tts = client.tts("""
我的小魚你醒了,還認識早晨嗎?

昨夜你曾經說,愿夜幕永不降臨。

你的香腮邊輕輕滑落的,是你的淚,還是我的淚?

初吻吻別的那個季節(jié),不是已經哭過了嘛?

我的指尖還記憶著,你慌亂的心跳。

溫柔的體香里,那一綹長發(fā)飄飄。
""")
open('我的小魚你醒了.mp3', 'wb').write(tts)

使用ApiKeyTranslate

請參考 pygtrans文檔

本文檔可能會滯后, pip install pygtrans 親自嘗試下吧~

有問題?

歡迎大家反饋和建議

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容