api 응답 json 구조가 대충
{response: {head: *** ,
body: {
items: {••••••••••}
}
}
}
요런 구조인데
여기서 api 서버 상태에 따라 응답 구조가 달라지는 구조임
예를 들어 http 에러면 내 기억상
{response: {errMsg: ***, Result뭐시기: ******}
}
이렇게 바뀌어서 들어오게 됨
내가 하고자 하는건, 저 json 응답을 딕셔너리로 변환하고 pd.DataFrame으로 넣어주고 싶은데
저 응답을 통채로 df에 넣으면 필요없는 데이터(head 라든가)들도 모조리 들어가버리는 데다가 핵심 데이터가 들어가있는 "items" 데이터를 따로 빼오는게 귀찮아져서 아예
response[response][body][items]
이런 식으로 데이터를 df에 넣어주려 하고 있음
그런데 내가 위에서 말했듯이
만약 api서버에서 에러가 발생하면 응답 구조가 바뀌어버리고 그러면 저 라인에서 반드시 에러가 출력되게 될건데
응답의 key값을 체크해줄 수 있으면 충분히 해결될 문제라고 보고는 있음
문제는 중첩된 딕셔너리 구조라서 딱 내가 원하는 "response", "body", "items" 이 세개의 키값이 있는지 바로 확인할 수 있는 방법을 모르겠음
일단 현재는 try문 사용중이고 만약 위 내용이 해결되면 그 방식대로 수정할 계획임
찾아보니 중첩 딕셔너리에서 키값 가져오고 싶으면 반복문을 사용해서 가져오라고는 하던데 꼭 반복문을 사용해야만 하나 궁금함...