VBA로 Selenium 자동화 마스터하기

2025-07-12 · Uncategorized · 읽는데 12분

VBA로 Selenium 자동화 마스터하기
엑셀은 비즈니스와 데이터 관리를 위한 가장 강력한 도구 중 하나입니다. 데이터베이스 기능을 갖추고 있을 뿐만 아니라, 프로그래밍을 조금만 할 줄 안다면 웹에서 정보를 추출하는 스크래핑(scraping) 기능도 활용할 수 있습니다.

과거에는 Internet Explorer를 이용하여 웹과 연동할 수 있었으나, 현재 Edge로 브라우저가 변경되면서 해당 메소드가 지원되지 않게 되었습니다. 이에 따라, 이제는 Selenium(셀레니움)을 활용하여 웹에 접근하는 방법이 널리 사용되고 있습니다.

Selenium은 웹 애플리케이션을 테스트하고 자동화하는 데에 매우 유용한 도구로, 다양한 프로그래밍 언어에서 사용할 수 있습니다. 여기서는 VBA 환경에서 Selenium을 활용하는 방법에 대해 상세히 설명드리겠습니다.

이 글에서는 SeleniumBasic 설치와 ChromeDriver 설치 과정을 포함하여, 실제로 VBA 코드 예제를 통해 Selenium을 활용한 웹 자동화 방법을 다룰 것입니다.

썸네일

SeleniumBasic 설치

Selenium을 VBA에서 활용하기 위해서는 먼저 SeleniumBasic을 설치해야 합니다. SeleniumBasic은 Selenium을 VBA 환경에서 작동할 수 있도록 만들어주는 툴입니다.

이 툴을 설치하기 위해서는 아래의 단계를 따르면 됩니다.

  1. SeleniumBasic 다운로드: SeleniumBasic GitHub 페이지에서 최신 버전을 다운로드합니다.
  2. 설치 실행: 다운로드한 파일을 실행하여 설치합니다. 설치 과정에서 특별한 설정이 필요 없으며, 기본 옵션으로 진행하시면 됩니다.
  3. 참조 추가: 엑셀에서 VBA 창을 열고, ‘도구’ 메뉴에서 ‘참조’를 클릭하여 Selenium Type Library를 체크한 후 확인 버튼을 누릅니다.

SeleniumBasic 설치 과정 요약

단계 설명
1. 다운로드 SeleniumBasic GitHub 페이지에서 다운로드
2. 설치 다운로드한 파일을 실행하여 설치
3. 참조 추가 VBA에서 '도구' > '참조'에서 Selenium Type Library 체크

이렇게 설치가 완료되면, VBA에서 Selenium을 사용할 준비가 끝났습니다.

ChromeDriver 설치

Selenium을 통해 웹 브라우저를 자동으로 조작하기 위해서는 ChromeDriver가 필요합니다. ChromeDriver는 Chrome이 Selenium의 명령을 올바르게 수행할 수 있도록 돕는 드라이버입니다.

ChromeDriver는 사용 중인 Chrome의 버전과 일치해야 하므로, 다음 단계를 따라 설치하시면 됩니다.

  1. Chrome 버전 확인: Chrome의 우측 상단에 있는 ... 아이콘을 클릭한 후, ‘도움말’ > ‘Chrome 정보’를 선택합니다. 여기에서 현재 설치된 Chrome의 버전을 확인합니다.
  2. ChromeDriver 다운로드: ChromeDriver 다운로드 페이지에 접속하여 자신의 Chrome 버전에 맞는 ChromeDriver를 다운로드합니다.
  3. 압축 해제 및 파일 위치 설정:
  4. 파일 탐색기를 열고 주소창에 %appdata%를 입력하여 해당 디렉토리로 이동합니다.
  5. 상위 디렉토리(appdata)로 이동한 후, Local 디렉토리로 들어갑니다.
  6. local 디렉토리의 SeleniumBasic 폴더로 이동하여 다운로드한 ChromeDriver 파일을 여기에 압축 해제하여 넣습니다.

ChromeDriver 설치 과정 요약

단계 설명
1. Chrome 버전 확인 Chrome 정보에서 현재 버전 확인
2. 다운로드 ChromeDriver 다운로드 페이지에서 다운로드
3. 파일 위치 설정 %appdata% 내 SeleniumBasic 폴더에 압축 해제

ChromeDriver 설치가 완료되면, 이제 VBA에서 Selenium을 통해 브라우저를 제어할 준비가 되었습니다.

다른 내용도 보러가기 #1

Selenium을 활용한 기본 코드 작성

이제 Selenium과 ChromeDriver 설치가 완료되었으니, VBA를 통해 실제로 브라우저를 여는 기본 코드를 작성해 보겠습니다. 아래의 코드는 네이버 웹사이트를 열고, 브라우저 창을 최대화하는 간단한 예제입니다.

```vba Sub seleniums_TEST() Static sel As New WebDriver Set sel = New ChromeDriver

sel.Start "chrome"
sel.Get "https://www.naver.com"
sel.Window.Maximize
sel.Wait (2000)

sel.Quit

End Sub ```

코드 설명

요소 설명
Static sel As New WebDriver sel 변수를 정적(static)으로 선언하여 모든 서브가 종료 후에도 유지되게 함.
Set sel = New ChromeDriver sel 변수를 ChromeDriver로 초기화.
sel.Start "chrome" Chrome 브라우저를 실행.
sel.Get "https://www.naver.com" 주어진 URL로 이동.
sel.Window.Maximize 브라우저 창을 최대화.
sel.Wait (2000) 2초 동안 대기.
sel.Quit 브라우저를 종료.

이 코드를 VBA 모듈에 붙여넣고 실행하면, 네이버 웹사이트가 열리고 최대화된 상태로 표시됩니다. 이처럼 Selenium을 활용하면 웹사이트를 자동으로 열고 조작하는 것이 가능합니다.

웹사이트 요소 조작하기

이제 Selenium을 통해 웹사이트를 열 수 있게 되었으니, 특정 웹사이트의 요소를 조작하는 방법을 알아보겠습니다. 예를 들어, 네이버의 검색창에 키워드를 입력하고 검색 버튼을 클릭하는 과정을 구현해 보겠습니다.

아래는 네이버에서 "셀레니움"이라는 키워드를 검색하는 코드입니다.

```vba Sub search_naver() Static sel As New WebDriver Set sel = New ChromeDriver

sel.Start "chrome"
sel.Get "https://www.naver.com"
sel.Window.Maximize
sel.Wait (2000)

sel.FindElementByCss("#query").SendKeys "셀레니움" ' 검색어 입력
sel.FindElementByCss(".btn_search").Click ' 검색 버튼 클릭
sel.Wait (5000) ' 검색 결과 대기
sel.Quit

End Sub ```

코드 설명

요소 설명
sel.FindElementByCss("#query").SendKeys "셀레니움" 검색창에 "셀레니움"이라는 키워드를 입력.
sel.FindElementByCss(".btn_search").Click 검색 버튼을 클릭하여 검색 수행.
sel.Wait (5000) 검색 결과를 보기 위해 5초 대기.
sel.Quit 브라우저를 종료.

이 코드를 통해 사용자는 네이버의 검색창에 원하는 키워드를 입력하고, 검색 버튼을 클릭하여 검색 결과 페이지로 이동할 수 있습니다. 이처럼 Selenium은 웹사이트의 다양한 요소를 손쉽게 조작하는 데 매우 유용합니다.

결론

VBA를 활용한 Selenium 자동화는 웹 데이터 수집, 테스트 자동화 등 여러 가지 활용 가능성을 가지고 있습니다. 이 글에서는 SeleniumBasic과 ChromeDriver 설치 방법, 기본적인 코드 작성법, 웹사이트 요소 조작 방법에 대해 자세히 설명하였습니다.

앞으로 추가적인 기능을 활용하여 더욱 다양한 자동화 작업을 진행할 수 있을 것입니다. 이제 VBA와 Selenium을 통해 여러분의 업무를 자동화하고, 시간을 절약하는 데 적극 활용해 보시기 바랍니다.

다음 포스팅에서는 더 복잡한 자동화 작업 및 웹사이트에서 데이터를 추출하는 방법에 대해 다룰 예정입니다. 감사합니다.

관련 영상

같이 보면 좋은 글