@HoBu4okok

Как отправить музыку через bot.send_audio (telebot, python)?

Есть следующие данные о аудиозаписи:
{
      'id': 456392508,
      'owner_id': 371745457,
      'track_covers': [
        'https://sun1-25.userapi.com/impf/c857724/v857724105/231c49/Z06CcVsa0Pg.jpg?size=80x80&quality=96&sign=64c53cc0a18fbc45a1d34ee0539e8459&type=audio',
        'https://sun1-25.userapi.com/impf/c857724/v857724105/231c49/Z06CcVsa0Pg.jpg?size=150x150&quality=96&sign=3e4c5b4d5d8f3e0e876b78af0ec75316&type=audio'
      ],
      'url': 'https://cs1-65v4.vkuseraudio.net/p4/e3d1633c928938.mp3?extra=UwZawvd-y72N_CZYKP_lO04smUYKNGu3zxoXpl2drPQrkQ_PQpmg1ZsnEiMuElrCudU3abDH4V95MNh3aCNhU067lyStRejERVIJIJRQYUCRtA1KIL6q8hOK1Gtp1shMJhCNrCtovzc-IAENvvhsoNAp&long_chunk=1',
      'artist': 'Каспийский Груз',
      'title': 'Ок',
      'duration': 155
    }

Отправка аудиозаписи пользователю:
bot.send_audio(chat_id, audio.get('url'), audio.get('title') + ' - ' + audio.get('artist'))

60e8ac2e91c93032812649.jpeg
Слева - то, что получилось. Справа - то, что должно получиться.

Подскажите пожалуйста, как это можно сделать?
В выше приведенном json есть ссылка на картинку аудиозаписи, название и исполнитель.
Слышал про eyeD3, но так и не понял как им воспользоваться.
Скачивать песни, и потом отправлять - не вариант, слишком долго. Была идея загружать на сервера Telegram аудиозапись с уже нормальным названием, и отправлять по file_id, но как загрузить и переименовать - не понятно.
Пробовал в send_audio указывать title и прочие параметры. Результата 0.
  • Вопрос задан
  • 97 просмотров
Решения вопроса 1
@Vindicar
Ты используешь pyTelegramBotAPI? Если заглянуть на гитхаб проекта, можно найти любопытный комментарий в одном из issue:
You can't set title and performer when you are sending audio by url, but there would be no problem if you will do the same with local file

Т.е. параметры типа title/performer/thumb работают только при загрузке файла, а не ссылки. ФЗ правда ли это, и если да, то почему такое ограничение.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы