본문 바로가기
AI 활용 방법

💻 엑셀로 뉴스 크롤링? 파이썬 없이 VBA로 클릭 한 번에 데이터 수집하기!

by alfain 2025. 4. 21.
반응형

📌 디스크립션

요즘 정보의 시대답게 뉴스, 쇼핑몰, 공공 데이터 등 다양한 웹사이트에서
원하는 정보를 수집해야 할 일이 많아졌습니다.

보통은 ‘크롤링’ 하면 파이썬을 떠올리지만,
설치부터 어렵고 다른 사람에게 공유하기도 까다로운 게 현실이죠.

그런데 만약, 별도 프로그램 없이 엑셀만으로 뉴스 데이터를 수집할 수 있다면 어떨까요?
이 글에서는 엑셀의 VBA 기능을 활용해 ‘네이버 뉴스 기사 제목과 내용’을 크롤링하는 방법을 알려드립니다.


🧠 왜 엑셀 VBA로 크롤링할까?


파이썬 강력한 크롤링 도구, 확장성 높음 설치 및 학습 난이도 높음
VBA(엑셀) 설치 불필요, 엑셀만 있으면 됨 구조 복잡한 사이트에 한계

👉 엑셀은 대부분의 사람들이 사용하는 프로그램이기 때문에
별다른 설치 없이 누구나 크롤링을 시작할 수 있는 큰 장점이 있습니다.


✏️ 1단계: 개발자 도구 준비 & VBA 창 열기

  1. 엑셀에서 Alt + F11을 눌러 VBA 편집기를 엽니다.
  2. 삽입 → 모듈을 클릭한 후, 기본 코드를 붙여넣습니다.
  3. 코드 실행은 **F5 (또는 초록 삼각형 버튼)**을 누르면 됩니다.

🌐 2단계: 크롤링 대상 주소 & 구조 파악하기

📍 핵심 개념 2가지만 기억하세요

  1. 크롤링할 웹페이지 주소(URL)
  2. 가져올 데이터의 위치 (HTML 클래스명)

📌 실제 예: 네이버 뉴스 검색

✅ 이 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만으로도 충분히 고급 자동화 작업이 가능합니다.

  • 초보자도 따라하기 쉬운 구조
  • 반복 작업에서 벗어나 클릭 한 번으로 데이터 확보
  • 기업, 학교, 개인 모두 활용 가능

“정보는 힘이다. 그리고 엑셀은 누구나 가진 무기다.”

반응형