@teenager_python

Почему не получаю обратной связи от бота?

Занимаюсь разработкой бота, который получает в сообщение песню, обрабатывает ее, и выводит мне настроение, текст песни.

import os
import speech_recognition as sr
import nltk
from nltk.sentiment.vader import SentimentIntensityAnalyzer
from nltk.corpus import wordnet
from afinn import Afinn
import logging
from aiogram import Bot, Dispatcher, types
from aiogram.types import ContentType
from aiogram.utils import executor

# Указываем токен бота
bot = Bot(token='token')
dp = Dispatcher(bot)

# Включаем логирование
logging.basicConfig(level=logging.INFO)

# Обработчик голосовых сообщений
@dp.message_handler(content_types=ContentType.VOICE)
async def handle_message(message: types.Message):
    try:
        # Получаем информацию о файле и загружаем его
        file_id = message.voice.file_id
        file = await bot.get_file(file_id)
        file_path = file.file_path

        # Создаем объект распознавания речи и открываем файл аудио
        r = sr.Recognizer()
        with sr.AudioFile(file_path) as source:
            audio_text = r.record(source)

        # Конвертируем аудиофайл в текст
        print(f'file_id: {file_id}')
        print(f'file_path: {file_path}')

        text = r.recognize_google(audio_text, language='en')

        # Определяем настроение текста при помощи SentimentIntensityAnalyzer
        sia = SentimentIntensityAnalyzer()
        sentiment = sia.polarity_scores(text)

        # Анализируем текст при помощи Afinn
        afinn = Afinn()
        afinn_score = afinn.score(text)

        # Анализируем текст на схожесть с известными словами при помощи WordNet
        synsets = wordnet.synsets(text)

        # Формируем текст ответа
        response_text = f'Анализ настроения песни:\n\nSentiment: {sentiment}\nAfinn score: {afinn_score}\nSynsets: {synsets}'

        # Отправляем ответ пользователю
        await bot.send_message(chat_id=message.chat.id, text=response_text)

    except Exception as e:
        logging.exception(e)
        await bot.send_message(chat_id=message.chat.id, text='Произошла ошибка при обработке аудиофайла. Попробуйте еще раз.')

# Запускаем бота
if __name__ == '__main__':
    executor.start_polling(dp, skip_updates=True)


В терминале появляются следующие сообщения:
INFO:aiogram:Bot: MyTranslater [@MyTranslaterrr_bot]
WARNING:aiogram:Updates were skipped successfully.
INFO:aiogram.dispatcher.dispatcher:Start polling.


После отправки боту песни, никакого обратного ответа я не получаю, пытался сделать отладку, чтобы получить хотя-бы название песни, которое получает бот, но ответа также нету.
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
Может, всё-таки ContentType.AUDIO, а не VOICE?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы