Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 14, 2015 09:48:31

dzhabrailov
Зарегистрирован: 2015-12-14
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Ответ JSON

   r = requests.get(adr, verify=False, data = data_str, headers=headers_str)
   print(r.status_code)
   rr=json.loads(r.text)

Таким макаром получаю JSON. Но там очень много ключей , значений и вложенностей. Обьясните как правильно теперь читать отуда определенные значения ?

Офлайн

#2 Дек. 14, 2015 09:53:36

sander
Зарегистрирован: 2015-02-19
Сообщения: 317
Репутация: +  53  -
Профиль   Отправить e-mail  

Ответ JSON

dzhabrailov
никак
и у респонса в requests есть

r.json()

Отредактировано sander (Дек. 14, 2015 09:54:04)

Офлайн

#3 Дек. 14, 2015 09:54:36

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Ответ JSON

dzhabrailov
Вам рассказать, что такое словари в питоне и как с ними работать?



Офлайн

#4 Дек. 14, 2015 10:05:03

dzhabrailov
Зарегистрирован: 2015-12-14
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Ответ JSON

все понял спасибо, просто в idle пишу, а тут дебагера нет, и не понять что возвращает.

Офлайн

#5 Дек. 14, 2015 10:59:56

dzhabrailov
Зарегистрирован: 2015-12-14
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Ответ JSON

  \u0418\u043d
Понял как читать данные, но там есть строки такого типа, как их декодировать ? получать Json методом requests.json()

Офлайн

#6 Дек. 14, 2015 11:20:06

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Ответ JSON

Зачем вам их как-то декодировать?



Офлайн

#7 Дек. 14, 2015 11:29:08

dzhabrailov
Зарегистрирован: 2015-12-14
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Ответ JSON

чтобы прочитать, API не мой, инсктрукции к нему нет тоже.

Офлайн

#8 Дек. 14, 2015 11:44:09

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Ответ JSON

Вы их глазами читать собрались или все-таки программно?
Я так подозреваю, что вы сейчас вывели на консоль весь словарь, увидели там непонятные символы и у вас паника.
Вы раньше времени панику не начинайте.



Офлайн

#9 Дек. 14, 2015 12:35:27

dzhabrailov
Зарегистрирован: 2015-12-14
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Ответ JSON

@route('/hello')
def hello():
    json_ans = eventslive()
    json_ans_tennis = json_ans['reply']['sports']['2']['chmps']
    for ans in json_ans_tennis:
        print(str(type(ans ))
    return str(json_ans_tennis)

ans получает типа строки, поэтому не могу дальше обращятся к нему как к словарю, таких обьектов как “86468” на картинке может быть несколько, хотел пройтись по ним дальше забирать информацию. Но, что-то делаю не так, помогите тугодуму

Отредактировано dzhabrailov (Дек. 14, 2015 13:03:59)

Прикреплённый файлы:
attachment Снимок.JPG (24,7 KБ)

Офлайн

#10 Дек. 14, 2015 13:05:39

sander
Зарегистрирован: 2015-02-19
Сообщения: 317
Репутация: +  53  -
Профиль   Отправить e-mail  

Ответ JSON

добавьте смайлик с фейспалмом

dzhabrailov
итерировать по ключам словаря и говрить: “О нет, у меня строка!” - это сильно,
и к чему все эти print(str(type(ans )), str(json_ans_tennis) ?

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version