Advertisement
shadsokoloff

Untitled

Dec 13th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.21 KB | None | 0 0
  1. import json
  2.  
  3. class TelegramObject():
  4.  
  5.     def __init__(self, update_json):
  6.         self.parse_json(**update_json)
  7.         print(self)
  8.  
  9.  
  10.     def parse_json(self, **kwargs):
  11.         my_globals = globals()
  12.         for k,v in kwargs.items():
  13.             classes = {'from': 'User', 'chat': 'Chat', 'message': 'Message'}
  14.             if k in classes:
  15.                 var_name = k
  16.                 class_name = classes[k]
  17.                 my_globals[var_name] = my_globals[class_name](v)
  18.             else:
  19.                 setattr(self, k , v)
  20.                
  21.  
  22.     def __str__(self):
  23.         return f'{type(self)}: {self.__dict__}'
  24.  
  25.     def to_json():
  26.         pass
  27.  
  28.  
  29. class User(TelegramObject):
  30.     pass
  31.  
  32. class Chat(TelegramObject):
  33.     pass
  34.  
  35. class Message(TelegramObject):
  36.     pass
  37.  
  38.  
  39. class IncUpdate(TelegramObject):
  40.     pass
  41.  
  42. s = '{"message": {"chat": {"type": "private", "first_name": "SOKOLOV", "id": 1144234}, "from": {"first_name": "SOKOLOV", "language_code": "ru", "is_bot": false, "id": 1144234}, "message_id": 828, "text": "\\u043f\\u0440\\u0438\\u0432\\u0435", "date": 1575803706}, "update_id": 716583963}'
  43. update_json = json.loads(s)
  44. upd_object = IncUpdate(update_json)
  45.  
  46. print(upd_object)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement