Ошибка 400 Телеграмм бот

Я пытаюсь создать биткойн-бот Telegram, который будет отправлять текущую скорость биткойнов.

Я застрял в части кода Telegram API, куда мне нужно отправить свое сообщение.

Все необходимые библиотеки, такие как json, requests, telebot, установлены правильно.

Другие команды, такие как /start или просто отвечая на обычные сообщения работает нормально, но это ошибка, которую я получаю при попытке отправить биткойн:

Error text: ERROR — TeleBot: «A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: unsupported parse_mode»

Источник: stackru.com

Что делать если выдает ошибку 400 для телеграм бота на python?

Извините меня за столь глупый вопрос, я просто новичок)
Я хочу сделать обычного телеграм бота на python для группы.

Telegram Filter Bot Error Problem Solve | Telegram Says 400 Bad Request | add again in proper format


Я сделал так, чтобы при отправки команды /start выскакивало сообщение.
Если в первый раз пишешь, то оно работает, а в следующие разы нет. Выдает Ошибку 400.
Вот код

2020-12-12 17:51:58,760 (util.py:66 WorkerThread2) ERROR — TeleBot: «ApiException occurred, args=(‘A request to the Telegram API was unsuccessful. The server returned HTTP 400 Bad Request. Response body:n[b»]’,)
Traceback (most recent call last):
File «C:UsersМаринаAppDataLocalProgramsPythonPython38-32libsite-packagestelebotutil.py», line 60, in run
task(*args, **kwargs)
File «C:/Users/Марина/Desktop/telebot_for_group.py», line 14, in welcome_message
bot.send_photo(message.chat.id, img, caption = Text)
File «C:UsersМаринаAppDataLocalProgramsPythonPython38-32libsite-packagestelebot__init__.py», line 638, in send_photo
apihelper.send_photo(self.token, chat_id, photo, caption, reply_to_message_id, reply_markup,
File «C:UsersМаринаAppDataLocalProgramsPythonPython38-32libsite-packagestelebotapihelper.py», line 276, in send_photo
return _make_request(token, method_url, params=payload, files=files, method=’post’)
File «C:UsersМаринаAppDataLocalProgramsPythonPython38-32libsite-packagestelebotapihelper.py», line 60, in _make_request
return _check_result(method_name, result)[‘result’]
File «C:UsersМаринаAppDataLocalProgramsPythonPython38-32libsite-packagestelebotapihelper.py», line 79, in _check_result
raise ApiException(msg, method_name, result)
telebot.apihelper.ApiException: A request to the Telegram API was unsuccessful. The server returned HTTP 400 Bad Request. Response body:
[b»]
»
2020-12-12 17:51:58,804 (__init__.py:420 MainThread) ERROR — TeleBot: «A request to the Telegram API was unsuccessful. The server returned HTTP 400 Bad Request. Response body:

Еще по теме:  Бот против накрутки в Телеграмме

#400 USER BANNED IN CHANNEL TELEGRAM


[b»]»

Помогите пожалуйста, если не трудно)

  • Вопрос задан более двух лет назад
  • 9730 просмотров

Комментировать
Решения вопроса 1

SoreMix

Файл один раз открыли, при отправке первый раз он прочитывается до конца, указатель остается в конце файла. При последующей отправке, скрипт так же пытается прочитать файл, но так как указатель стоит в конце файла, он не получает никаких данных, ну и при отправке пустого файла телеграм выдает предупреждение.

Делайте лучше так — удалите свой open() в начале скрипта и вставьте его непосредственно в строчку с отправкой:

bot.send_photo(message.chat.id, img = open(‘Ржомба.png’,’rb’), caption = Text)
with open(‘Ржомба.png’,’rb’) as f: bot.send_photo(message.chat.id, img = f, caption = Text)

Источник: qna.habr.com

Error Code: 400 unsupported parse_mode, хотя тег закрыт

Возможно, дубль, но у меня, в отличие от оригинала тег закрыт. Дело в том, что когда я нажимаю на кнопку бота Telegram (код предоставлю ниже) появляется вот такая ошибка:

(__init__.py:652 MainThread) ERROR — TeleBot: «A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: unsupported parse_mode»
elif message.text == «McAfee 1 год»: bot.send_message(message.chat.id,»Хороший выбор! McAfee 1 год стоит «,mcafee_price,» рублейnОписание: McAfee — это хороший антивирус, который сможет защитить как ваши мобильные устройства так и ваш ПК.

У нас вы смоежете приобрести этот антивирус на один год и с безлимитным подключением устройств всего за «,mcafee_price,» деревянных!»)

У кнопки было вообще другое название изначально и все хорошо работало. Другие кнопки вполне хорошо работают.

Сам код, где храниться parse_mode:

bot.send_message(message.chat.id,»Добро пожаловать, !nЯ — , бот для покупки софта, игр и различных подписок на разные сервисы».format(message.from_user, bot.get_me()),parse_mode=’html’,reply_markup=markup)

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

Вы в функцию отправки сообщения через запятую передаёте аргументы. Правильно так:

Еще по теме:  Как сделать скрин в Телеграмме чтобы не было видно

text = f»Хороший выбор! McAfee 1 год стоит рублейn» f»Описание: McAfee — это хороший антивирус, который сможет защитить как ваши » f»мобильные устройства так и ваш ПК. У нас вы смоежете приобрести этот антивирус на » f»один год и с безлимитным подключением устройств всего за деревянных!» bot.send_message(message.chat.id, text)

Источник: husl.ru

Рейтинг
( Пока оценок нет )
Загрузка ...