Top.Mail.Ru
Ответы

Ошибка A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: unsupported parse_mode

код:
def notify_all_subscribers():
# Считываем подписчиков из файла subscribers.txt
with open("subscribers.txt", "r") as f:
subscribers = f.readlines()

# Считываем классы пользователей из файла user_classes.txt
user_classes = {}
with open("user_classes.txt", "r") as f:
for line in f:
parts = line.strip().split()
if len(parts) == 2:
user_id, class_name = parts
user_classes[user_id] = class_name

# Обходим всех подписчиков
for subscriber in subscribers:
if not subscriber.strip():
continue

user_id = subscriber.strip() # Получаем user_id из списка подписчиков
class_name = user_classes.get(user_id) # Ищем класс по user_id

if class_name:
schedule_message = extract_schedule(url, class_name) # Получаем расписание и классы
markup = types.InlineKeyboardMarkup()
button = types.InlineKeyboardButton("Сайт с Заменами", url="https://kingim7.ru/#/4/raspisanie/zamena.php")
markup.add(button)
try:
bot.send_message(user_id, '<blockquote>Вышли новые замены! </blockquote>\n\n', schedule_message, reply_markup=markup, parse_mode='HTML') # Используем user_id
except Exception as e:
print(f"Ошибка при отправке сообщения пользователю {user_id}: {e}")
else:
print(f"Класс для пользователя {user_id} не найден.")

все было нормально, ничего в коде не менял, при вызове функции пишет в консоль


Ошибка при отправке сообщения пользователю 7878830498: TeleBot.send_message() got multiple values for argument 'parse_mode'

По дате
По рейтингу
Аватар пользователя
Оракул
6мес
123456789101112
 # ... existing code ... 
            try: 
                bot.send_message( 
                    user_id,  
                    f'<blockquote>Вышли новые замены!</blockquote>\n\n{schedule_message}',  
                    reply_markup=markup,  
                    parse_mode='HTML' 
                ) 
            except Exception as e: 
                print(f"Ошибка при отправке сообщения пользователю {user_id}: {e}") 
# ... existing code ... 
 
Аватар пользователя
Профи
6мес

Замени parse_mode='HTML' на объект HTML, который импортируется из модуля ParseMode

1
 from telegram.ParseMode import HTML