Задать вопрос
@Rozetka01
Только начал осваивать IT

Как реализовать телеграм бота, который после оплаты высылает документ?

бот не высылает документ после оплаты. Ниже приведен отрывок кода. Если ответите, то еще хотелось бы узнать почему мой код неправильный(почему он не работает ,структурно).

# successful payment
@dp.message_handler(content_types=ContentType.SUCCESSFUL_PAYMENT)
async def successful_payment(message: types.Message):
    print("SUCCESSFUL PAYMENT:")
    #bot.send_message(message.chat.id, document=f)
    payment_info = message.successful_payment.to_python()
    for k, v in payment_info.items():
        print(f"{k} = {v}")

    await bot.send_document(message.chat.id,open(r"C:\Users\Huawei\Desktop\pythonProject_tg\Variant_11.doc", "rb"),
                                        f"Платёж на сумму {message.successful_payment.total_amount // 100} {message.successful_payment.currency} прошел успешно!!!")
    
if __name__ == "__main__":
    executor.start_polling(dp, skip_updates=False)
  • Вопрос задан
  • 286 просмотров
Подписаться 1 Простой 8 комментариев
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик с нуля
    6 месяцев
    Далее
  • Skillfactory
    DevOps-инженер
    6 месяцев
    Далее
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@lamanoff
Попробуйте считывать файл следующим образом:
with open(r"C:\Users\Huawei\Desktop\pythonProject_tg\Variant_11.doc", "rb") as f:
    content_bytes = f.read()
Ответ написан
Ваш ответ на вопрос

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

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