мега обновление всего на свете.

1. добавил chatgpt
2. многое переписал
This commit is contained in:
2023-01-28 14:01:59 +07:00
parent f212f04bc2
commit 6f480bdcb2
23 changed files with 158 additions and 15 deletions
+12 -9
View File
@@ -20,22 +20,25 @@ class Converter:
:return: str - текст + служебная информация
"""
f = -1.0
try:
try:
import mutagen
f = mutagen.File(self.path_to_file) # получение данных mutagen
if float(f.info.length) >= 30.0: # если длинна больше 30 секунд
f = float(f.info.length)
if f >= 30.0: # если длинна больше 30 секунд
self.service = "google" # устанавливаю сервис google
return self.google() # запуск функции google
return self.google(f) # запуск функции google
else:
self.service = "yandex" # устанавливаем сервис yandex
return self.yandex() # запуск функции yandex
except: # если какая-то проблема
return self.google() # запуск функции google
return self.yandex(f) # запуск функции yandex
except Exception as e: # если какая-то проблема
print(e)
return self.google(f) # запуск функции google
except sr.RequestError: # обработка ошибки размера файлов
return "Толи файл слишком большой, толи с ботом что-то случилось" # возвращение ошибки
def google(self) -> str:
def google(self, f) -> str:
"""
Функция работающая с stt google
@@ -52,7 +55,7 @@ class Converter:
r.adjust_for_ambient_noise(source) # мини очистка шума
try:
response = "google\n\n" + r.recognize_google(audio, language=self.language) # получение текста
loging(self.message, "google", wav_file, response) # записываю логи
loging(self.message, "google", wav_file, response, f) # записываю логи
os.remove(wav_file) # удаляю лишние файлы
return response # возвращаю текст
except sr.UnknownValueError: # ошибка распознавания текста
@@ -61,7 +64,7 @@ class Converter:
except FileNotFoundError: # ошибка файла(из-за веса telegram не пускает)
return "Толи файл слишком большой, толи с ботом что-то случилось" # возвращение ошибки
def yandex(self) -> str:
def yandex(self, f) -> str:
"""
Функция работающая с stt yandex
@@ -71,6 +74,6 @@ class Converter:
reg = ShortAudioRecognition(Session.from_api_key("AQVN3xNJamAFP4_FS6Gis0Uud0vONFk24umBSXvh")) # получаю
# объект для расшифровки
response = "yandex\n\n" + reg.recognize(open(str(self.path_to_file), str('rb')).read()) # получаю весь текст
loging(self.message, "yandex", self.path_to_file, response) # записываю логи
loging(self.message, "yandex", self.path_to_file, response, f) # записываю логи
os.remove(self.path_to_file) # удаляю лишние файлы
return response # возвращаю ответ