본문 바로가기
python

[데이터 분석] 고속도로 실시간 영업소간 통행시간 API 활용하기

by 포 키 2023. 8. 7.
728x90

이번에는 데이터 분석을 하기위한 연습을 먼저 한다.

이 때까지는 엑셀파일을 이용한 시각화 연습을 주로 했었다면, 지금은 API를 이용해 원하는 데이터를 분석해보는 방법을 이용할 계획이다.

이 부분은 세미프로젝트를 진행하는데에 매우 기본으로 사용되는 부분이라 더 잘 활용해야하고, 알아둬야 한다.

 

1. 공공데이터 포털에서 API 조회하기

먼저 사이트에 들어가서 분석하기 위한 파일을 찾는다.

내가 활용한 사이트는 아래에 첨부한다.

http://data.ex.co.kr/dataset/datasetList/list?pn=1&CATEGORY=TR&GROUP_TR=TIME_TCS 

 

고속도로 공공데이터 포털

데이터 목록 Home > 데이터 > 데이터 목록 - 교통 서비스 전체 FILE OpenAPI 원문 LOD 업무 전체 교통 건설 유지관리 일반행정 통행료 휴게소 융합 <!-- Project : 공공데이터 개방시스템 확대구축 수정일자

data.ex.co.kr

 

사이트에 들어가줬으면, 인증키를 발급받아야 이용할 수 있는데 우리는 강사님께서 받은 인증키를 공유해주셔서 굳이 받지 않아 인증키 발급에 대한 부분은 생략한다.

그리고 사이트에서 실시간 영업소간 통행시간을 눌러주자

그럼 실시간 영업소간 통행시간 이라는 창이 뜰 텐데 아래로 스크롤해서 예제 실행하기를 눌러준다

 

 

그러면 다음과 같은 창이 뜬다!

본인이 가진 인증키를 key 값에 입력하고 type 에서 xml을 사용할 것인지, json을 사용할 것인지를 체크해준다.

그리고 요청변수를 참고해서 원하는 데이터 구간을 설정한다.

 

이 상태에서 예제 실행하기를 클릭하고 아래로 스크롤을 내리면 예제 실행 결과가 나오는데 거기서 상세를 누르면 아래와 같이 창이 뜬다.

 

이렇게 기본으로 API를 다루는 방법을 작성해봤다.

 

 

2. 가져온 API로 데이터 분석하기

이제는 원하는 구간으로 설정한 데이터를 분석하는 방법이다.

먼저 내가 이용하는 것은 jupyter lab 이다.

xml, json 두가지 모두를 이용하는 코드를 배웠기에 둘다 작성하려한다.

 

 

1) JSON 이용하기

내가 활용하는 API는 영업소 구간만 살짝 변경했다.

제일 먼저 기본으로 데이터가 어떻게 되는지 한번 읽어봐야한다.

그리고 코드 200이 나와야지만 api를 활용할 수 있기 때문에 꼭 확인해주자

 

 

그리고 우리가 보기 쉽게 하기 위해 pandas - dataframe으로 만드는 과정을 거치면 된다.

코드는 정말 간결하지만, 난 아직 어떤 코드가 사용되는지도 잘 파악이 안되서 일단은 수업에서 보여주는 그대로를 참고하는 중이다.

이 후 복기하는 시간을 가지면서 어떤 의미를 담고 있는지를 확인할 생각이다.

 

 

 

2) XML 이용하기

이번엔 xml 파일을 이용해서 데이터 프레임으로 만들어보자

api를 xml로 설정하고 영업소 구간은 json과 동일하게 설정했다.

 

이 방법 말고도 다양한 방법이 있었는데, 이 방법이 러닝타임이 가장 빨랐던 방법이라고 소개해주셨다.

난 두가지 모두 Chat GPT 에서 검색하느라 시간이 다 갔지만, 그래도 어떤 방법이든 코드가 알아보기 쉬우면서 잘 돌아간다면 배움에 의미가 있다는 생각으로 공부하는 중이다.

728x90