如何使用 telethon(Python)从电报消息中获取 json

How can i get a json from telegram message using telethon (Pyton)

what i want

我想从消息中解析字符串。 (不在频道中,来自用户的消息)。我通过使用这个 --> print(client.get_messages('bot_name')).

得到了这样的消息

我申请了一张图片,因为我想给你看,我想从消息中得到。

[Message(id=177, peer_id=PeerUser(user_id=123456789), date=datetime.datetime(2021, 8, 31, 10, 30, 35, tzinfo=datetime.timezone.utc), message='\n├ Номер: 79991234567\n├ Страна: Россия\n├ Регион: г.Москва и Московская область\n└ Оператор: Билайн\n\n Возможные имена:\n└ Джек и еще 6 имен\n\n ФИО: найдено\n Возможные адреса: найдено\n Вконтакте: найдено\n Дата рождения: найдено\n\u200d♂️ Facebook: найдено\n Telegram: найдено\n✅ Whatsapp: есть\n✅ Viber: есть\n Объявлений: 26 шт\n\u200d♂️ Интересовались: 2 человека\n Репутация: (0) (0) \n\n⚠️ Для просмотра результатов поиска необходимо приобрести подписку!\nℹ️ Если информация не найдена, закажите «Расширенный поиск»', out=False, mentioned=False, media_unread=False, silent=False, post=False, from_scheduled=False, legacy=False, edit_hide=False, pinned=False, from_id=None, fwd_from=None, via_bot_id=None, reply_to=None, media=None, reply_markup=ReplyInlineMarkup(rows=[KeyboardButtonRow(buttons=[KeyboardButtonCallback(text=' Оформить подписку', data=b'PREMIUM|welcome', requires_password=False)]), KeyboardButtonRow(buttons=[KeyboardButtonCallback(text=' Расширенный поиск - 30₽', data=b'PREMIUM|PHONE|79991234567', requires_password=False)]), KeyboardButtonRow(buttons=[KeyboardButtonCallback(text=' Добавить репутацию', data=b'REP|0|79991234567', requires_password=False)]), KeyboardButtonRow(buttons=[KeyboardButtonUrl(text='✅ Whatsapp', url='https://botapi.co/whatsapp/79991234567?&gclid=18547829:695de1f0395e3a1a2496bbc02629c1c6&_bk=cloudflare'), KeyboardButtonUrl(text=' Viber', url='https://botapi.co/viber/79991234567?&gclid=18547829:695de1f0395e3a1a2496bbc02629c1c6&_bk=cloudflare')])]), entities=[MessageEntityBold(offset=5, length=6), MessageEntityCode(offset=12, length=11), MessageEntityBold(offset=26, length=7), MessageEntityBold(offset=43, length=7), MessageEntityBold(offset=83, length=9), MessageEntityBold(offset=104, length=16), MessageEntityBold(offset=124, length=6), MessageEntityItalic(offset=131, length=12), MessageEntityBold(offset=148, length=4), MessageEntityCode(offset=153, length=7), MessageEntityBold(offset=164, length=17), MessageEntityCode(offset=182, length=7), MessageEntityBold(offset=193, length=10), MessageEntityCode(offset=204, length=7), MessageEntityBold(offset=215, length=14), MessageEntityCode(offset=230, length=7), MessageEntityBold(offset=244, length=9), MessageEntityCode(offset=255, length=7), MessageEntityBold(offset=266, length=9), MessageEntityCode(offset=276, length=7), MessageEntityBold(offset=286, length=9), MessageEntityCode(offset=296, length=4), MessageEntityBold(offset=303, length=6), MessageEntityCode(offset=310, length=4), MessageEntityBold(offset=318, length=11), MessageEntityCode(offset=330, length=5), MessageEntityBold(offset=342, length=15), MessageEntityCode(offset=358, length=10), MessageEntityBold(offset=372, length=10), MessageEntityCode(offset=384, length=1), MessageEntityCode(offset=390, length=1), MessageEntityBold(offset=400, length=64), MessageEntityBold(offset=468, length=4), MessageEntityBold(offset=505, length=19)], views=None, forwards=None, replies=None, edit_date=None, post_author=None, grouped_id=None, restriction_reason=[], ttl_period=None), total=35][enter image description here]

这在Telethon's FAQ中有解释:

async def main():
    messages = await client.get_messages('bot_name')
    # messages is a list. you can access it by index as with any other list in python

    message = messages[0]
    # message is a Message object. you can access its .text property as with any other object in python

    print(message.raw_text)  # raw_text for no formatting

client.loop.run_until_complete(main())

您还可以阅读其他 Message 字段和属性。