공공데이터 포털에서 open API를 받아오면서 발생한 "Module not found" 에러와 "Import Error" 에러 핸들링
결과부터 말하자면 파이썬 버전의 차이에 따른 문제였다
현재 사용 중인 파이썬 버전은 3.9.1
공공데이터 포털 https://www.data.go.kr/
먼저 활용한 데이터는 공공데이터 포털에 등록되어 있는
한국산업인력공단의 데이터인 " 산업인력 국가기술자격 통계 정보"
먼저 활용하고 싶은 open API 상세를 보면 화면 하단에 아래와 같은 샘플 코드가 나온다.
이 샘플 코드는 open API를 불러오는 코드로 자신이 사용하는 언어에 맞는 샘플 코드를 활용하면 된다.
오류 발생/ 에러 핸들링
Jupyter notebook에서 python을 이용하여 API를 불러올 것이기 때문에
Python 샘플코드를 복사하여 실행시킨 결과 아래와 같은 오류가 발생하게 되었다.
ModuleNotFoundError: No module named 'urllib2'
"urlib2" 모듈은 파이썬 버전 2에서 제공하는 모듈로 버전 3에는 존재하지 않는다고 한다.
따라서 다음과 같이 고쳐주면 실행된다.
from urllib2 import Request, urlopen (파이썬 버전 2)
-> from urllib.request import Request, urlopen (파이썬 버전 3)
ImportError: cannot import name 'urlencode' from 'urllib'
이 에러 역시 파이썬 버전에 다른 에러로 버전 3에서는 다음과 같이 입력해주면 해결된다.
from urllib import urlencode, quote_plus (파이선 버전 2)
-> from urllib.parse import urlencode, quote_plus (파이선 버전 3)
결과
두 코드를 고쳐준 결과 제대로 실행된 것을 확인 할 수 있다.
반응형
'Python (Data) > 기타' 카테고리의 다른 글
[데이터 과학] 데이터의 중요성/ 데이터 과학의 정의 및 절차/ 관련 분야 (0) | 2020.05.03 |
---|
댓글