📌 디스크립션
요즘 정보의 시대답게 뉴스, 쇼핑몰, 공공 데이터 등 다양한 웹사이트에서
원하는 정보를 수집해야 할 일이 많아졌습니다.
보통은 ‘크롤링’ 하면 파이썬을 떠올리지만,
설치부터 어렵고 다른 사람에게 공유하기도 까다로운 게 현실이죠.
그런데 만약, 별도 프로그램 없이 엑셀만으로 뉴스 데이터를 수집할 수 있다면 어떨까요?
이 글에서는 엑셀의 VBA 기능을 활용해 ‘네이버 뉴스 기사 제목과 내용’을 크롤링하는 방법을 알려드립니다.
🧠 왜 엑셀 VBA로 크롤링할까?
파이썬 | 강력한 크롤링 도구, 확장성 높음 | 설치 및 학습 난이도 높음 |
VBA(엑셀) | 설치 불필요, 엑셀만 있으면 됨 | 구조 복잡한 사이트에 한계 |
👉 엑셀은 대부분의 사람들이 사용하는 프로그램이기 때문에
별다른 설치 없이 누구나 크롤링을 시작할 수 있는 큰 장점이 있습니다.
✏️ 1단계: 개발자 도구 준비 & VBA 창 열기
- 엑셀에서 Alt + F11을 눌러 VBA 편집기를 엽니다.
- 삽입 → 모듈을 클릭한 후, 기본 코드를 붙여넣습니다.
- 코드 실행은 **F5 (또는 초록 삼각형 버튼)**을 누르면 됩니다.
🌐 2단계: 크롤링 대상 주소 & 구조 파악하기
📍 핵심 개념 2가지만 기억하세요
- 크롤링할 웹페이지 주소(URL)
- 가져올 데이터의 위치 (HTML 클래스명)
📌 실제 예: 네이버 뉴스 검색
- 예) https://search.naver.com/search.naver?where=news&query=삼성전자
- 개발자 도구(F12)를 열어 기사 제목의 클래스명을 확인합니다.
- 예시 클래스명: .news_tit, .api_txt_lines
✅ 이 HTML 구조에서 필요한 클래스명을 찾는 것이 크롤링의 핵심 포인트입니다.
💡 3단계: 엑셀 VBA 코드 구성 요약
🧩 기본 흐름

- GetHtmlDocument() : 웹사이트의 HTML 코드를 가져오는 함수
- querySelectorAll() : 특정 클래스명에 해당하는 HTML 요소 모두 선택
📌 데이터 출력
- 기사 제목은 titles.Item(0).innerText
- 기사 내용은 descriptions.Item(0).innerText 형태로 출력
- 이를 **엑셀 셀(A5, A6 등)**에 반복적으로 써주는 방식입니다.
🔁 4단계: 반복문으로 여러 기사 크롤링
기사 10개를 한 줄씩 복사하기는 비효율적입니다.
그래서 For 반복문을 사용합니다:

- A5부터 A14까지 10개의 기사 제목 출력
- 기사 내용도 동일한 방식으로 2열(B열)에 출력 가능
🔄 5단계: 여러 페이지 자동 수집 (페이징)
뉴스 검색 결과는 보통 10개씩 페이지가 나뉘어 있습니다.
URL 뒤에 붙는 start 파라미터만 조정하면 다음 페이지 데이터를 불러올 수 있습니다.
예:
- 1페이지: start=1
- 2페이지: start=11
- 3페이지: start=21
🧮 반복문을 활용한 자동 페이징

이렇게 하면 10페이지 × 10개 = 총 100개의 뉴스를 자동으로 수집할 수 있습니다.
🔍 6단계: 키워드 검색 기능 추가
단순히 "삼성전자"만 수집하는 건 아쉽겠죠?
엑셀 상단 셀(A2)에 원하는 키워드를 입력하고
해당 값을 코드 내 변수로 받아서 URL에 삽입하면 됩니다:

✅ 사용자 입력값으로 뉴스 크롤링 범위를 자유롭게 바꿀 수 있습니다!
🧼 7단계: 초기화 버튼으로 셀 내용 지우기
다음 검색을 위해 이전 검색 결과를 지우는 초기화 기능도 함께 넣어봅니다.

이렇게 하면 A5~B1000 범위에 있는 내용이 한 번에 삭제됩니다.
🖱️ 8단계: 버튼에 매크로 연결하기
엑셀 도형(버튼)을 삽입하고 우클릭 → 매크로 지정을 통해
검색, 초기화 등의 기능을 손쉽게 실행할 수 있습니다.
- 검색 버튼 → Sub 크롤링하기()
- 초기화 버튼 → Sub 초기화()
✅ 결과물
이제 엑셀 파일 안에서
- 키워드 입력
- 검색 버튼 클릭
- 최대 100개의 뉴스 기사 제목 + 요약 내용 자동 수집!
- 필요 시 초기화 버튼으로 리셋 가능
🎯 활용 예시
- 트렌드 키워드 자동 수집
- 브랜드 관련 뉴스 모니터링
- 경쟁사 뉴스 수집
- 학생 과제 및 논문 주제 참고 자료 자동 모음
📝 결론
파이썬을 몰라도 괜찮습니다.
엑셀과 VBA만으로도 충분히 고급 자동화 작업이 가능합니다.
- 초보자도 따라하기 쉬운 구조
- 반복 작업에서 벗어나 클릭 한 번으로 데이터 확보
- 기업, 학교, 개인 모두 활용 가능
“정보는 힘이다. 그리고 엑셀은 누구나 가진 무기다.”
'AI 활용 방법' 카테고리의 다른 글
🛍 엑셀 VBA로 네이버 쇼핑 상품 데이터 + 이미지까지 크롤링 하기! (0) | 2025.04.23 |
---|---|
📊 엑셀 VBA로 네이버 증권 종목 데이터 크롤링하기 – 비동기 통신 & JSON 완전 정복! (0) | 2025.04.22 |