GoogleTrans Python 不翻译

use*_*732 2 python google-translate googletrans

我在我的项目中使用 GoogleTrans。实际上,我有一段马拉地语文本,是从“语音到文本”获得的,但是当我将该文本转换为英语时,它没有正确翻译。

但是当我在网站上使用谷歌翻译时,它的翻译正确率是 100% 吗?

图像

这是一段代码:

import speech_recognition as sr
from cltk.corpus.utils.importer import CorpusImporter
from googletrans import Translator
import goslate
import googletrans

print("Hello World")

filename = r"C:\Users\TOSHIBA\Documents\Mini Project-2 (Trimester 4)\Project 1- (Document Summary)\Dataset\Voice\Gaurav.wav"
r = sr.Recognizer()

with sr.AudioFile(filename) as source:
    audio_data = r.record(source)

    text = r.recognize_google(audio_data,language='mr')
    print("Text\n",text)

    print(type(text))
    
    translator = Translator()
    converted_text = translator.translate(text)
    print("Converted text\n",converted_text)

    with open("D:/output.txt",'w',encoding="utf-8") as f:
        f.write(text)
        f.write(str(converted_text))
Run Code Online (Sandbox Code Playgroud)

请建议,我该怎么办?

Gre*_*reg 6

https://pypi.org/project/googletrans是一个非官方包(不是由 Google 创建的)。另外,在免责声明中,它有以下内容“ ...此 API 不保证该库始终正常工作... ”。如果你想要稳定性,请使用官方 Google API https://cloud.google.com/translate/docs

\n

无论如何,下面是一个展示翻译工作的测试:

\n
from googletrans import Translator\n\ntranslator = Translator()\nresults =translator.translate(\'\xe0\xa4\xb9\xe0\xa5\x85\xe0\xa4\xb2\xe0\xa5\x8b \xe0\xa4\xb5\xe0\xa4\xb0\xe0\xa5\x8d\xe0\xa4\xb2\xe0\xa5\x8d\xe0\xa4\xa1\')\nprint(results.text)\n
Run Code Online (Sandbox Code Playgroud)\n

输出:

\n
Hello World\n
Run Code Online (Sandbox Code Playgroud)\n

我不确定您遇到的问题是什么。不过,我建议将您的代码重构为方法,然后您可以单独进行测试。

\n

下面的代码尚未经过测试,但应该有助于调试:

\n
import speech_recognition as sr\n#from cltk.corpus.utils.importer import CorpusImporter\nfrom googletrans import Translator\n#import goslate\n#import googletrans\n\ndef provideAudioToText(filename):\n    r = sr.Recognizer()\n    with sr.AudioFile(filename) as source:\n    audio_data = r.record(source)\n    return r.recognize_google(audio_data,language=\'mr\')\n\ndef translate(text):\n    translator = Translator()\n    results = translator.translate(text)\n    return results.text\n\ndef Save(filename, original_text, converted_text):\n    with open(filename,\'w\',encoding="utf-8") as f:\n        f.write(original_text)\n        f.write(str(converted_text))\n\noriginal_text = provideAudioToText(r"C:\\Users\\TOSHIBA\\Documents\\Mini Project-2 (Trimester 4)\\Project 1- (Document Summary)\\Dataset\\Voice\\Gaurav.wav")\nprint("Text\\n", original_text)\nprint(type(original_text))\nconverted_text = translate(original_text)\nprint("Converted text\\n",converted_text)\nSave("D:/output.txt", original_text, converted_text) \n
Run Code Online (Sandbox Code Playgroud)\n