jsonAndRequest.py 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import json
  2. import requests
  3. #Тестовый класс User и Address (ВАЖНО!!!) поля классов должны называться также как и поля json объекта
  4. class Address(object):
  5. def __init__(self, street, number):
  6. self.street = street
  7. self.number = number
  8. def __str__(self):
  9. return "{0} {1}".format(self.street, self.number)
  10. class User(object):
  11. def __init__(self, name, address):
  12. self.name = name
  13. self.address = Address(**address)
  14. def __str__(self):
  15. return "{0} ,{1}".format(self.name, self.address)
  16. #Функция преобразования json в объект класса
  17. def jsonToUser(jsonstring) -> User:
  18. jsonObj = json.loads(jsonstring)
  19. print(jsonObj)
  20. u = User(**jsonObj)
  21. return u
  22. #Функция обращения к апи и получение токена
  23. def requestGetToken() -> str:
  24. login = "79876543210"
  25. password = "admin12345@"
  26. url = "https://user.sharix-app.org/auth/token/login/"
  27. data = {
  28. "password": password,
  29. "phone_number": login
  30. }
  31. response = requests.post(url, json=data)
  32. result = response.json()
  33. return result['auth_token']
  34. #Функция обращения к апи и получение списка пользователей
  35. def requestGetListUser():
  36. auth_token=requestGetToken()
  37. print(auth_token)
  38. headers = {'Authorization': f'Token {auth_token}'}
  39. url = 'https://user.sharix-app.org/platform/api/sharix-users/'
  40. response = requests.get(url, headers=headers)
  41. print(response)
  42. print(response.json())