Преобразование ответа JSON в объект Python - PullRequest
0 голосов
/ 17 мая 2019

Я хочу преобразовать ответ HTTP GET (я использую библиотеку запросов ) в объект python. Вот мой код:

# Full, pure, response
response = requests.get(url)

# Getting request data/content represented in byte array
content = response.content

# Byte array to string
data = content.decode('utf8')


# This line causes "ValueError: malformed node or string: <_ast.Name object at 0x7f35068be128>"
#data = ast.literal_eval(data)

# I tried this also but data is still string after those 2 lines
data = json.dumps(data)
data = json.loads(data, object_hook=lambda d: namedtuple('X', d.keys())(*d.values()))

1 Ответ

2 голосов
/ 17 мая 2019

Вы можете получить ответ в виде словаря, используя content = response.json(), а затем передать его content в json.loads напрямую (при условии, что ваш ответ приходит как json)

# Full, pure, response
response = requests.get(url)

# Getting response as dictionary
content = response.json()

#Loading dictionary as json
data = json.loads(content, object_hook=lambda d: namedtuple('X', d.keys())(*d.values()))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...