본문 바로가기

엑셀기초기능

엑셀 파워쿼리를 통한 웹 데이터 불러오기

반응형

엑셀 파워 쿼리(Power Query) 기능

엑셀에서는 파워 쿼리 기능을 통해서 데이터를 가져오고 변환하는 작업을 간단하게 수행할 수 있다. 파워쿼리 기능의 큰 장점 중 하나는 CSV, XML, PDF 등 파일형식을 가리지 않고 데이터를 뽑아낼 수 있다는 점이다. 또 다른 장점 중 하나는 SQL 서버, AZURE 클라우드 서버, 웹 데이터 등 데이터가 어디에 저장되어 있는지를 가리지 않고 데이터에 접근만 가능하다면 엑셀 파일에 데이터를 쉽게 가져올 수 있다는 점이다. 

네이버금융 현재가 불러오기 : 파워쿼리 웹데이터 입수

네이버 금융(https://finance.naver.com/sise/sise_quant.naver)에서 보여주는 거래량 상위 100 개 종목의 정보를 엑셀의 파워쿼리 기능을 통해서 가져오는 작업을 해보자.

그림1: 네이버 금융 상위 100 개 종목 정보

 

아래 그림 2처럼 엑셀 -> 데이터 -> 데이터가져오기 -> 기타 원본에서 -> 웹을 클릭하면 웹사이트의 URL을 입력하라는 안내창이 뜬다. 이 창에 위의 URL인 " https://finance.naver.com/sise/sise_quant.naver"를 입력하면 엑셀이 알아서 HTML 문서에 있는 데이터 테이블들을 뽑아내서 탐색 창을 띄워준다. 

그림2: 웹에서 테이터 테이블 가져오기

 

거래량 상위 100 개 종목에 해당하는 데이터는 테이블2에 해당하므로 테이블2를 클릭하고 데이터 변환을 누르면 HTML데이터가 자동으로 엑셀 형태의 데이터로 변환된다.

그림3: 웹 데이터 변환

 

데이터 변환을 클릭하면 자동으로 파워쿼리 편집기가 뜨는데, 편집기에서 컬럼명 수정, 데이터 속성 변경, 컬럼의 데이터 속성 변경(텍스트, 숫자 등) 등의 작업을 할 수 있다. 

그림4: 파워쿼리 편집기를 통한 데이터 후처리

 

모든 데이터 정리 작업이 끝났으면 좌측 상단의 닫기 및 다음으로 로드 메뉴를 클릭하고 일단 "연결만 만들기"를 선택해서 데이터 연결만 만든다. 

그림5: 데이터 연결 만들기

 

위 그림 5 처럼 만든 데이터 연결은 데이터-> 쿼리 및 연결을 누르면 확인할 수 있다. 저장된 연결을 우클릭한 뒤 "다음으로 로드"를 누르면 엑셀시트에 데이터를 보여주는 방식을 선택할 수 있는데 일반적인 방법인 "표"를 선택하고 표가 시작할 위치를 찍어주면 연결된 데이터를 볼 수 있다. 

그림6: 연결된 데이터 로드하기

 

이렇게 파워쿼리를 통해서 HTML 문서분석이나 코드 작성 없이 손쉽게 데이터를 불러올 수 있다. 뿐만 아니라 컬럼을 우클릭해서 "새로고침" 기능을 활용할 수 있는데, 새로고침을 통해 몇 초만에 연결된 데이터의 최신화도 가능하다.

그림7: 연결된 데이터 표로 불러오기 및 새로고침

반응형