Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Сейчас я покажу как сделать бота который превращает аудио сообщение в текст
Вот код самого бота
Вот и все! Остальное можете добавить сами
Вот код самого бота
Python:
import speech_recognition as sr
from telebot import types
import soundfile as sf
import urllib.request
import subprocess
import requests
import telebot
import json
import os
bot = telebot.TeleBot('ТОКЕН ВАШЕГО БОТА')
s = requests.session()
def wav2text(dest_filename, id, file_name):
r = sr.Recognizer()
message = sr.AudioFile(dest_filename)
with message as source:
audio = r.record(source)
try:
result = r.recognize_google(audio, language="ru_RU")
bot.send_message(id, format(result))
os.remove(dest_filename)
os.remove(file_name)
except sr.UnknownValueError:
bot.send_message(id, 'Не удалось распознать текст')
os.remove(dest_filename)
os.remove(file_name)
def oga2wav(file_name, id):
src_filename = file_name
dest_filename = file_name + '.wav'
process = subprocess.run(['ffmpeg', '-i', src_filename, dest_filename])
wav2text(dest_filename, id, file_name)
def donwload(file_path, file_id, id):
url = 'https://api.telegram.org/file/botТОКЕН ВАШЕГО БОТА/' + file_path
urllib.request.urlretrieve(url, file_id + '.oga')
file_name = file_id + '.oga'
oga2wav(file_name, id)
def request2text(file_id, id):
r = s.get('https://api.telegram.org/botТОКЕН ВАШЕГО БОТА/getFile?file_id=' + file_id)
r = json.loads(r.text)
donwload(r['result']['file_path'], r['result']['file_id'], id)
@bot.message_handler(content_types=['text'])
def start_message(message):
bot.send_message(message.chat.id, 'Пришли / Перешли мне любое аудиосообщение')
@bot.message_handler(content_types=['voice'])
def start_message(message):
request2text(message.voice.file_id, message.chat.id)
bot.polling()
Вот и все! Остальное можете добавить сами