인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

share님의 프로필 이미지
share

작성한 질문수

[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)

IT/데이터 분야를 위한 지식: XML 데이터 포멧 다루기2 (업데이트)

공공api 에러

작성

·

543

0

선생님 강의에서는 공공api에서 파이썬2를 이용한 예제가 제공되었는데요. 제가 이 글을 쓰는 시점에는 파이썬 3로 되었더라구요.

# Python3 샘플 코드 #


import requests

url = 'http://apis.data.go.kr/B552584/ArpltnInforInqireSvc/getMinuDustFrcstDspth'
params ={'serviceKey' : '서비스키', 'returnType' : 'xml', 'numOfRows' : '100', 'pageNo' : '1', 'searchDate' : '2020-11-14', 'InformCode' : 'PM10' }

response = requests.get(url, params=params)
print(response.content)

예제 코드를 보면 강의코드처럼 한줄로 쓸 필요없이 , 네이버 open api처럼 params로 묶어서 처리하면 되는것 같은데요.

 

문제는 예제코드 자리에 서비스키를 넣어도 데이터가 로드 되지 않습니다.

에러코드를 구글링해보니 서비스키 재발급 또는 한시간정도를 기다려보라고 해서 둘다 실행해봤지만 계속 에러가납니다 ..

b'<OpenAPI_ServiceResponse>\n\t<cmmMsgHeader>\n\t\t<errMsg>SERVICE ERROR</errMsg>\n\t\t<returnAuthMsg>SERVICE_KEY_IS_NOT_REGISTERED_ERROR</returnAuthMsg>\n\t\t<returnReasonCode>30</returnReasonCode>\n\t</cmmMsgHeader>\n</OpenAPI_ServiceResponse>'

예제코드에서 서비스키에 제 서비스키를 넣는거 말고 다른것을 수정해야하는 부분이 있나요?

답변 1

0

안녕하세요. 답변 도우미입니다.

저희 강의는 모두 파이썬3로 진행하고 있습니다. 우선 이 부분 확인해보시면 좋을 것 같습니다.

기재해주신 에러메세지에는 다음과 같이 서비스키가 등록되어 있지 않아서, 에러가 난다고 되어 있습니다. 서비스키를 정확히 한글자도 빼지 않고, 넣어주시면 좋을 것 같습니다. 가끔 공공API 시스템 자체에서 에러 한동안 나는 케이스는 있긴 해요. 이 부분은 어떻게 대응이 쉽지는 않은데요. 결국 해당 시스템이 정상으로 돌아와야 하니까요. 정 그렇다면, 아예 공공 API 를 우선 남겨두시고, 다른 부분을 먼저 들으신 후에, 일정 시간이 흐른 후 다시 한번 해보셔도 좋을 것 같습니다.

감사합니다.

SERVICE_KEY_IS_NOT_REGISTERED_ERROR

 

'<OpenAPI_ServiceResponse>\n\t<cmmMsgHeader>\n\t\t<errMsg>SERVICE ERROR</errMsg>\n\t\t<returnAuthMsg>SERVICE_KEY_IS_NOT_REGISTERED_ERROR</returnAuthMsg>\n\t\t<returnReasonCode>30</returnReasonCode>\n\t</cmmMsgHeader>\n</OpenAPI_ServiceResponse>'

share님의 프로필 이미지
share

작성한 질문수

질문하기