빅엑셀(BigExcel.KR) : 엑셀 업무 자동화, 마케팅 관리, 빅데이터 분석, 시각화 and more...

1-3 [사례 실습] 파워쿼리로 엑셀에 블로그 글(RSS, XML) 가져오기1 본문

1.업체 모니터링 자동화 : 블로그, 뉴스, 주가 정보

1-3 [사례 실습] 파워쿼리로 엑셀에 블로그 글(RSS, XML) 가져오기1

BIGEXCEL 2016. 9. 19. 07:54

안녕하세요? 그동안 파워쿼리 내용을 업데이트하지 못했는데요.

 

얼마전 기회가 있어 위키독스(wikidocs.net)에 2개의 책을 공개했습니다. 이 블로그 내용을 업그레이드한 것이니 파워쿼리와 가까워지는데 조금이나마 도움이 되길 바랍니다.

 

1. 클릭클릭! 코딩없이 시작하는 엑셀 크롤링(https://wikidocs.net/book/7776)

2. 클릭클릭! 엑셀로 이해하는 인공지능(https://wikidocs.net/book/7800)

 

감사합니다.


[목표]

1. 블로그 통신의 특징과 형식에 대해 알아보기

2. 사례 실습에서 사용할 블로그 사이트 주소와 XML 페이지 주소를 찾기

3. 파워쿼리로 웹 페이지 내용 가져오기 시작

4. 파워쿼리에서 필요한 열만 선택하기

5. 파워쿼리 내용 수정, 편집하기

6. 파워쿼리에서 열제목 수정하기

7. 파워쿼리에서 쿼리 이름 수정하기

8. 파워쿼리에서 열 표시 순서 바꾸기(이동)

 

 

파워쿼리도 설치하셨고, 기본 화면구성도 보셨다면,

사례를 통해 파워쿼리를 사용하는 방법을 함께 알아가겠습니다.

 

이번 미션은 핸드폰 케이스를 제조하는 중소기업의 담당자가 되어, 제품 생산에 영향을 미칠 수 있는

삼성전자와 LG전자의 동향을 모니터링하는 것입니다.

이를 위해 삼성전자와 LG전자의 블로그 글목록을 엑셀로 수집해야 합니다.

 

파워쿼리는 웹사이트에 있는 다양한 데이터를 수집할 수 있는데, 그 중 하나가 블로그 수집입니다.

 

1. 블로그 통신의 특징과 형식에 대해 알아보기

 

- 데이터 수집 시각에서 블로그의 특징은? : 블로그는 RSS라는 통신방식을 통해 XML형태의 문서를 제공해주는데, 이 문서는 블로그의 다양한 구성요소를 제외한 텍스트 형태를 갖고 있습니다.

 

- 데이터를 가져 올 블로그의 RSS 피드 주소는? : 아래 그림처럼 대부분의 블로그에 가시면 화면 아래에 RSS또는 ATOM 등의 표시 또는 주황색 모양의 RSS아이콘이 

있는 것을 확인하실 수 있습니다. 혹시 이런 표시가 없을 경우는 블로그 주소 뒤에 rss 또는 feed 등을 붙여주시면 XML형태의 문서를 볼 수 있습니다.

 

 

 

 

 

 

 

 

 

 

 

[네이버 검색 블로그의 예]

 

- 블로그에서 사용하는 XML 문서 형식

 

RSS 2.0 버튼을 누르면 아래와 같은 조금은 낯선 화면이 보입니다. HTML 문서와 비슷하게 생겼지만 약간 다른 것 같기도 합니다. 아~ XML 문서는 이렇게 생겼구나~라고만 생각하시고, 다음 단계로 넘어가시지요?

 

 

 

2. 사례 실습에서 사용할 블로그 사이트 주소와 XML 페이지 주소를 찾기

 

이제 삼성전자와 LG전자의 블로그에서 위 화면처럼 XML문서를 제공해주는 주소를 찾아야 합니다.

- 삼성전자 공식 블로그 : http://news.samsung.com/kr/

- LG전자 공식 블로그 : http://social.lge.co.kr/

 

삼성전자 블로그는 RSS버튼이나 RSS아이콘이 없어 주소 뒤에 rss를 붙여 보았습니다. 다행스럽게도 아래 XML주소를 찾을 수 있었습니다.

LG전자 블로그는 RSS아이콘이 있어 그 아이콘을 눌러서 라는 XML주소를 찾았습니다.

- 삼성전자 공식 블로그 XML 주소http://news.samsung.com/kr/feed

- LG전자 공식 블로그 XML 주소http://social.lge.co.kr/feed/

 

[LG전자 공식 블로그]

 

 

3. 파워쿼리로 웹 페이지 내용 가져오기 시작

 

먼저 삼성전자 공식 블로그의 글을 수집하겠습니다.

엑셀 > 파워쿼리 메뉴 탭 > 웹에서 클릭

 

 

 

URL을 입력하는 창이 나오면, 복사해 두었던 XML 주소를 붙여 넣은 후 확인 버튼을 클릭합니다.

 

 

 

XML페이지와의 통신에 성공하면 아래 화면처럼 문서 모양의 아이콘이 표시되고, 오른쪽에는 쿼리 설정이라는 창이 나타납니다.

문서 모양의 아이콘을 더블클릭해서 가져올 XML 문서를 살펴보겠습니다.

 

 

 

이번에는 XML table을 가져오도록 Table부분을 클릭합니다.

 

 

 

[팁] 각 단계가 진행될 때마다 오른쪽 쿼리 설정 창의 '적용된 단계' 부분에 작업 내용이 추가되는 것을 확인하실 수 있습니다.

만약 쿼리 작업을 잘못하였거나, 과정을 변경하고 싶을 때는 언제든 해당 단계를 거슬러 올라갈 수도 있고, 오른쪽에 있는 기어모양의 아이콘을 클릭하여 해당 단계의 작업 내용을 수정하실 수도 있습니다.

 

XML문서에는 많은 내용이 있습니다만, 우리에게 필요한 내용은 item이라는 부분에 들어있습니다.

이 내용을 가져오기 위해서 item 부분의 Table을 클릭하시기 바랍니다.

 

 

 

4. 파워쿼리에서 필요한 열만 선택하기

 

드디어 우리가 원하던 블로그 문서가 보이기 시작합니다. 하지만, 내용이 너무 많고, 뭐가 뭔지 알기 어렵습니다.

이번 사례 실습에서는 title, link, pubDate 열(column)만 사용하기 때문에

3개의 열만 선택(컨트롤키를 누르고 열 제목 부분을 클릭)합니다. 

 

 

 

3개의 열을 선택한 후 오른쪽 마우스를 클릭하고 다른 열 제거를 클릭하면 선택한 3개의 열만 남고 나머지 열이 제거됩니다.

(또는 홈 메뉴 > 열 관리 > 열 제거 > 다른 열 제거 클릭)

 

 

 

title, link, pubDate 열만 남은 것을 확인한 후 홈 메뉴 > 닫기 및 로드 버튼을 클릭하여 엑셀로 데이터를 불러옵니다.

 

 

 

5. 파워쿼리 내용 수정, 편집하기

 

불러온 화면을 보니, 열 제목도 낯설은 영어이고, 오른쪽 창에 보이는 쿼리 이름도 '쿼리1'이라고 나옵니다. 좀 더 편하게 관리하기 위해 이 열제목과 쿼리 이름을 바꿔보겠습니다.

통합 문서 쿼리 > 쿼리1 > 오른쪽 마우스 > 편집을 클릭하시면 작성한 쿼리를 편집, 수정할 수 있습니다.

(또는 쿼리1영역 더블클릭)

 

 

 

자... 다시 쿼리 편집 화면으로 돌아왔습니다. 아까보다는 좀 익숙하신지요?

 

 

6. 파워쿼리에서 열제목 수정하기

 

먼저 열제목을 바꿔보겠습니다.

열제목을 선택 > 오른쪽 마우스 클릭 > 이름 바꾸기 클릭하면 선택한 열제목의 이름을 변경할 수 있도록 수정화면이 나타납니다. (또는 열제목 더블클릭)

같은 방법으로 각각 pubDate를 일시, title을 제목, link를 URL로 바꿉니다.

 

7. 파워쿼리에서 쿼리 이름 수정하기

 

쿼리1으로 되어 있는 쿼리 이름을 바꾸겠습니다.

쿼리 설정 > 속성 > 이름 영역을 클릭하면 바로 내용을 수정할 수 있습니다. 삼성전자의 블로그를 가져오기 때문에 '삼성전자블로그'라고 이름을 지정하겠습니다.

 

 

8. 파워쿼리에서 열 표시 순서 바꾸기(이동)

 

한 가지 작업을 더 해보겠습니다.

이번에는 각 열의 표시 순서를 바꿔보겠습니다.

지금은 열의 표시 순서가 일시 -> 제목 -> URL인데 이 것을 제목 -> 일시 -> URL로 바꾸겠습니다.

제목 열을 제일 앞으로 이동시키면 원하는 순서대로 열제목이 표시될 것 같습니다.

 

제목 열을 선택 > 오른쪽 마우스 클릭 > 이동 > 처음으로(또는 왼쪽) 선택하면 제목 열이 처음으로 이동된 것을 확인하실 수 있습니다.(또는 변환 메뉴 > 열 리본 > 이동 > 처음으로 선택)

 

작업이 다 되었으면 홈 메뉴 > 닫기 및 로드 버튼을 클릭하여 데이터를 엑셀로 가져옵니다.

 

 

 

 

아래 화면처럼 결과가 나오나요? 축하드립니다.

 

 

다음 글, 블로그 글 가져오기2에서는 LG전자 블로그 내용을 가져오는 것과 2곳의 블로그 내용을 합치고 변형하는 사례를 실습하겠습니다.

 

감사합니다.

 

[사례 실습 파일]

1-3 사례 실습 파워쿼리로 엑셀에 블로그 글(RSS XML) 가져오기1.xlsx
다운로드