Я очень новичок в python и пытаюсь проанализировать то, что кажется данными JSON.
import requests
import json
URL = "http://myip/cgi-bin/lun/luci/;stok=/login?form=login"
payload = {
'operation': 'login',
'username': 'someuser',
'password': 'somepassword'
}
session = requests.session()
r = requests.post(URL, data=payload)
print (r.json())
Я получаю:
{u'data': {u'stok': u'0c2f16c954cd2cafccfaf1bf50000ac6'}, u'success': True}
Мне нужно использовать случайный набор букв / цифр в одинарной кавычке 0c2f16c954cd2cafccfaf1bf50000ac6 (она меняется каждый раз). Я не вижу в этом ответе двойных кавычек. Итак, несколько вопросов:
Метод json() не возвращает JSON, как следует из названия. Он уже возвращает данные разобранный JSON.
И просто подсказка: если вы начнете изучать Python, начните с Python 3, версия 2 незадолго до выхода на пенсию.






I dont see any double quotes in the response. Is this still json?
Это был JSON. r.json() десериализовал ответ JSON на Python dict, а затем print распечатал этот dict.
What would be the best way to assign that middle part of random characters to a variable so I can use it in a request url I need to build next?
a_variable = r.json()["data"]["stok"]
не совсем уверен, но разве он не возвращает экземпляр
dict? (декодированный json)