Ошибка 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'
# ... 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 ...
Замени parse_mode='HTML' на объект HTML, который импортируется из модуля ParseMode
from telegram.ParseMode import HTML