반응형
이 코드로
import sense
import json
sense.api_key = '...'
node = sense.Node.retrieve('........')
feed = node.feeds.retrieve('presence')
events = feed.events.list(limit=1)
result = json.dumps(events,indent=1)
print result
다음과 같은 JSON 피드가 표시됩니다.
{
"links": {...},
"objects": [
{
"profile": "GenStandard",
"feedUid": ".....",
"gatewayNodeUid": ".....",
"dateServer": "2015-02-28T09:57:22.337034",
"geometry": null,
"data": {
"body": "Present",
"code": 200
},
"signal": "-62",
"dateEvent": "2015-02-28T09:57:22.000000",
"type": "presence",
"payload": "2",
"nodeUid": "....."
}
],
"totalObjects": 875,
"object": "list"
}
'body'가 '존재'(또는 'code'가 '200')인지 어떻게 확인할 수 있습니까? 내 스크립트는 TRUE 또는 FALSE를 반환해야합니다.
업데이트
이 코드를 답변에 제안 된대로 추가하면 제대로 작동합니다.
d=json.loads(result)
def checkJson(jsonContents):
bodyFlag = True if "body" in jsonContents["objects"][0]["data"] and jsonContents["objects"][0]["data"]["body"] == "Present" else False
return bodyFlag
print checkJson(d)
해결 방법
본문 키가 실제로 있는지 확인해야 할 수도 있습니다.
def checkJson(jsonContents):
bodyFlag = True if "body" in jsonContents["objects"][0]["data"] and jsonContents["objects"][0]["data"]["body"] == "Present" else False
codeFlag = True if "code" in jsonContents["objects"][0]["data"] and jsonContents["objects"][0]["data"]["code"] == 200 else False
return bodyFlag or codeFlag
print checkJson(result)
참조 페이지 https://stackoverflow.com/questions/28780547
반응형
'파이썬' 카테고리의 다른 글
파이썬 두 개의 Pandas 데이터 프레임을 동일한 인덱스로 결합 (0) | 2020.11.29 |
---|---|
파이썬 정수를 로마 숫자로 변환하는 기본 프로그램? (0) | 2020.11.29 |
파이썬 Spark로 CSV 파일로드 (0) | 2020.11.29 |
파이썬 Python에 어떤 리팩토링 도구를 사용합니까? (0) | 2020.11.29 |
파이썬 os.listdir에서 반환 된 파일 이름에 대해 FileNotFoundError를 제공하는 Python (0) | 2020.11.29 |
댓글