Задать вопрос
@novichok888
linux

Python телеграм бот — хотел чтобы при надписи start выдавала стикер приветствия но ошибка как исправить?

import telebot

bot = telebot.TeleBot('1352920423:AAFZ1xL_UfOtfNoJXomQeuZCtsgFnXCky1c')

@bot.message_handler(commands=['start'])
def welcome(message):
sti = open('Python/sticker.webp')
bot.send_sticker(message.chat.id, sti)

bot.send_message(message.chat.id, "Добро пожаловать, {0.first_name}!\nЯ - {1.first_name}, бот созданный чтобы быть подопотным кроликом.".format(message.from_user, bot.get_me()),
parse_mode="html")

@bot.message_handler(content_types=['text'])
def lalala(message):
bot.send_message(message.chat.id, message.text)

bot.polling(none_stop=True)

5f6dbee3c389a039717906.png
  • Вопрос задан
  • 1713 просмотров
Подписаться 1 Средний 4 комментария
Пригласить эксперта
Ответы на вопрос 2
@MrP0zitiv4ik
Не надо отправить файл стикера а надо отправить file_id стикера. Как получить этот id? Можно с помощю бота @idsticker_bot либо выводить на консол Объект message.
в Js:
bot.start((ctx) => {
    ctx.reply('Привет');
    ctx.replyWithSticker('CAACAgIAAxkBAAISrV9jK2iLT87OMPNYNR-6FEOWm8qrAAInAwACtXHaBg_03s-gxd3sGwQ');
});

В Питон
sti = 'CAACAgIAAxkBAAISrV9jK2iLT87OMPNYNR-6FEOWm8qrAAInAwACtXHaBg_03s-gxd3sGwQ'
bot.send_sticker(message.chat.id, sti)
Ответ написан
Комментировать
SoreMix
@SoreMix Куратор тега Python
yellow
Либо запускать скрипт из его папки, либо учиться пользоваться полными путями до файлов

import os

sticker_path = os.path.join(os.getcwd(), 'Python', 'sticker.webp')
sti = open(sticker_path)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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