Бот отправляет одни и те же картинки, хотя по идеи должен случайные. Подскажите пожалуйста как исправить

import telebot

token: str = "token"

bot = telebot.TeleBot(token)

@bot.message_handler(commands=["start", "help"])
def start_help_command(message: telebot.types.Message):
    bot.reply_to(message, "Я могу отправить тебе кота.")
    bot.reply_to(message, """Вот список моих комманд
/cat - случайное фото кота
/gif - случайная гифка с котом
/tag - добавить описание
""")

@bot.message_handler(commands=["cat"])
def cats_photo(message: telebot.types.Message):
    bot.send_photo(message.chat.id, "https://cataas.com/cat")

@bot.message_handler(commands=["gif"])
def cats_gif(message: telebot.types.Message):
    bot.send_video(message.chat.id, "https://cataas.com/cat/gif", None)

@bot.message_handler(commands=['tag'])
def tag(message: telebot.types.Message):
    tags: str = "Введите пожалуйста описание для кота на английском, например, -- orange - рыжий''"
    sms = bot.send_message(message.chat.id, tags)
    bot.register_next_step_handler(sms, pszh)

def tag_photo(message: telebot.types.Message):
    tag = message.text
    bot.send_photo(message.chat.id, f"https://cataas.com/cat/{tag}")

bot.polling(none_stop=True, interval=0)

Ответы (1 шт):

Автор решения: Amgarak

В TG-API для отправки изображений не достаточно просто передавать URL. Нужно указать на конкретный файл (изображения, видео и т.д.), который будет загружен на сервер TG и уже от туда отправлен пользователю.

import telebot
import random

token: str = "token"
bot = telebot.TeleBot(token)

@bot.message_handler(commands=["cat"])
def cats_photo(message: telebot.types.Message):
    number_random_param = random.randint(1, 1000000)  
    cat_url = f"https://cataas.com/cat?{number_random_param}"  
    bot.send_photo(message.chat.id, cat_url)

bot.polling(none_stop=True, interval=0)

введите сюда описание изображения

→ Ссылка