Как отправить в телеграм бот определенные данные из полученных запросом?

Рейтинг: 0Ответов: 1Опубликовано: 14.04.2023

Как отправить в телеграм бот определенные данные из полученных запросом? Доброго времени суток. Ребята хелпаните плиз. Есть код запустив который получаю через print два результата в зависимости от запроса

{
"cmd": "ss",
"prs": {
"htt": "ww",
"db": "ee",
"ul": "rr",
"pr": "tt",
"activ": "yy",
"lean": "uu"
},
"status": true,
"str": false,
"cd": {
"pol": [
{
"bd": 111111,(Значение меняется)
"cmn": {
"al": "32423434543534532",
"amd": "22222", (Значение меняется)
"bl": "fdgfdfdgdfgdfgdfgerer",
"mtt": "BBB",
"tolop": "0x00",
"tuuls": null,
"stron": true,
"saer": [],
"snd": false,
"mmr": "0",
"pol": "0"
}
}
],
"snd":[{ (в зависимости от запроса может быть пусто)
"bd":23232,
"cmn":{
"al": "32423434543534532",
"amd": "32323", (Значение меняется)
"bl": "fdgfdfdgdfgdfgdfgerer",
"mtt": "BBB",
"tolop": "0x00",
"tuuls": null,
"stron": true,
"saer": [],
"snd": false,
"mmr": "0",
"mmrentry":"22696",
"pol":"117780"
}
}]
}
}

Мне нужно из "pol" отправить "bd": 111111 и "amd": "22222" И те же даынные с "snd":[ если не пусто bot.send_message(message.chat.id, получено данных из"pol" : "bd": 111111 и "amd": "22222" отправлено данных из "snd": "bd": 111111 и "amd": "22222" )

Ответы

▲ 0Принят

Для того, чтобы отправить определенные данные из полученного запроса в сообщении телеграм бота, вам нужно:

Распарсить полученный JSON запрос, чтобы получить нужные данные. Вы можете использовать модуль json для этого:

import json

json_data = '{"cmd": "ss", ...}' # Замените это вашим полученным JSON запросом

parsed_data = json.loads(json_data)

Используйте метод bot.send_message для отправки сообщения в телеграм бота. Вы можете сформировать текст сообщения, используя полученные данные и метод строки format():

import telegram

bot = telegram.Bot(token='<TOKEN>') # Замените <TOKEN> на токен вашего бота
chat_id = '<CHAT_ID>' # Замените <CHAT_ID> на id чата, куда вы хотите отправить сообщение

message_text = 'получено данных из "pol": "bd": {} и "amd": {}'

# Получаем данные из "pol"
bd = parsed_data['cd']['pol'][0]['bd']
amd = parsed_data['cd']['pol'][0]['cmn']['amd']

# Отправляем сообщение
bot.send_message(chat_id=chat_id, text=message_text.format(bd, amd))

Вы можете использовать ту же логику для отправки данных из "snd":[].