1. OPEN API

 

OPEN API : 누구나 사용할 수 있도록 공개된 API를 뜻하며, 개발자에게 웹 서비스에 대한 프로그래밍적인 권한을 제공한다.

최근 코로나 맵 등의 웹 사이트 역시 API를 활용해서 만들어졌다.

 

2. 공공데이터포털에서 API 사용

 

 

공공데이터포털

국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Dataset)와 Open API로 제공하는 사이트입니다.

www.data.go.kr

 

공공데이터포털은 정부에서 제공하는 공공데이터 통합제공 시스템이다. 2020년 현재, 사회의 120개 분야에 관한 데이터 셋이 공개되어 있다.

 

 

공공데이터포털에 접속해서 필요한 API에 대해 검색한다.

 

 

필요한 데이터 셋을 활용신청 한다.

 

 

신청을 완료하고 마이페이지에 들어가면 오픈 API를 활용할 수 있다.

그리고 참고문서를 통해 API에 접근하기 위한 방식을 확인한다.

 

 

공항별 항공통계를 크롤링하기 위한 요청 및 응답 메시지를 확인한다.

 

3. 크롤링

 

 1) 공항별 항공통계를 List 형식으로 추출

 

request와 BeautifulSoup를 import한다.

 

크롤링 한 결과를 담기 위해 result라는 빈 리스트를 생성한다.

그리고 크롤링에 필요한 월을 리스트로 입력한다.

url을 호출한 결과를 res 변수에 담아서 url에 해당하는 내용이 모두 담긴 text에 저장한다.

item 태그에 해당하는 airport, arrFlight, depFlight, filghts를 result에 추가한다.

조건을 만족하는 하나의 태그만 출력한다.

 

 

result에 월, 공항 이름, 도착 항공편 수, 출발 항공편 수, 전체 항공편 수가 리스트에 담긴 것을 확인할 수 있다.

 

 2) 추출한 결과를 DataFrame으로 변환

 

DataFrame에 관한 내용은 아래에서 확인할 수 있다.

 

(JY) 파이썬 Pandas DataFrame 구조 이해하기

1. DataFrame의 특징 2차원 데이터 구조로 index가 row와 column으로 구성되어 있다. column들이 서로 다른 타입일 수도 있다. 크기는 변할 수 있다. row는 각 개별 데이터를, column은 각 개별 속성(feautre)을..

dsbook.tistory.com

 

 

result의 가독성을 높이기 위해 리스트를 DataFrame으로 변환한다.

 

 

공항 이름을 제외한 모든 column을 int형으로 변환한다.

 

 

flight이라는 DataFrame을 통해 앞서 리스트 형식보다 가독성이 높아진 것을 확인할 수 있다.

이처럼 크롤링과 DataFrame을 활용하면, 복잡하고 다양한 데이터를 쉽게 정리할 수 있다.

728x90
반응형

'데이터 사이언스 메뉴얼 > Crawling' 카테고리의 다른 글

융합연구 1 - 크롤링(1)  (1) 2020.04.05
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 라이프코리아트위터 공유하기
  • shared
  • 카카오스토리 공유하기