컴퓨터 공부/엑셀 & VBA

[엑셀vba] 크롬으로 웹 제어 해보자.(6/15 IE 지원 종료)

도 박사 2022. 5. 28. 14:01
반응형

안타깝게도 22년 6월 15일부터 IE 실행하면 엣지로 열린다고 한다.

엑셀vba로 웹 컨트롤 할 땐 보통 IE를 이용했지만 이제 못할 듯...흐흑


목차

  1. 셀레니움 환경 구축(필수)
  2. 셀레니움 기본 사용법
  3. 크롬 업데이트 중지(선택)

1. 셀레니움 환경 구축

 

1.1 셀레니움 설치

https://github.com/florentbr/SeleniumBasic/releases

 

Releases · florentbr/SeleniumBasic

A Selenium based browser automation framework for VB.Net, VBA and VBScript - florentbr/SeleniumBasic

github.com

 

셀레니움 베이직 다운로드하고 실행

설치를 하다보면 다음 내용을 볼 수 있다. 무슨 내용인고 하니 크롬말고도 오페라, 엣지, 팬텀js 같은 여러가지 브라우저를 지원하는데 웹드라이버 설치할래? 그런 느낌이다. 언젠가는 쓸 수도 있으니 다 설치해주자.

셀레니움 설치가 끝났으면 현재 크롬에 설치된 버전에 맞는 크롬 웹드라이버를 다운받아야한다.

만일 크롬이 업데이트 되서 버전 바뀌면 웹 드라이버 새로 받아야함....계속 그러면 귀찮으니까 나중에 크롬 업데이트 중지하는 법도 알아보자. 

 


 

1.2 크롬 웹 드라이버 다운로드 

https://chromedriver.chromium.org/downloads

 

ChromeDriver - WebDriver for Chrome - Downloads

Current Releases If you are using Chrome version 102, please download ChromeDriver 102.0.5005.61 If you are using Chrome version 101, please download ChromeDriver 101.0.4951.41 If you are using Chrome version 100, please download ChromeDriver 100.0.4896.60

chromedriver.chromium.org

내가 쓰는 102.0.5005.63 버전의 크롬

위 사이트에서 다운로드 받기 전 내 PC의 크롬 버전을 확인해보자. 

내 크롬과 동일한 버전의 웹 드라이버를 받아야 하므로 꼭 체크해야한다!

버전 확인 방법: 크롬 > 설정 > 크롬 정보 

 

오잉? 내 버전이랑 같은게 없네?!?!

막상 사이트에 들어가보니 내 버전과 동일게 보이지 않는다.. 하지만 걱정 ㄴㄴ

이럴땐 102.0.5005 버전 아무거나 쓰면 된다. 102.0.5005.27 이나 102.0.5005.61 암거나 써도 상관없다.  

나는 102.0.5005.61 버전을 클릭해봤다.

 

목록이 뙇! 뜨는데 본인의 운영체제에 맞는 파일을 다운받고 압축풀면된다.

난 윈도우 64비트지만 파일이 없으니 win32.zip를 클릭하고 압축해제까지 완료했다.

 

압축해제하면 나오는 파일

압축해제하면 크롬드라이버.exe 파일 하나만 덜렁 나타나는데, 요 녀석을 셀레니움베이직 폴더에 붙여넣기 해줘야한다.

셀레니움베이직 폴더 경로: C:\Users\사용자명\AppData\Local\SeleniumBasic

셀레니움 베이직 폴더

.

덮어쓰기..

요런 메시지 팝업이 나타나면 상큼하게 덮어쓰기 해주자. 그럼 셀레니움 설치는 끝이난다.

마지막으로 엑셀에서 참조만 추가해주면 셀레니움을 사용할 수 있게 된다.

 


 

1.3 엑셀 참조 추가

엑셀 > vba 편집기(실행 단축키 Alt + F11) > 도구 >  참조 실행

참조 창 열리면 Selenum Type Library 체크하고 확인누르면 구축완료된다.

참조 추가하자

 


2. 셀레니움 기본 사용법

Public 크롬 As New Selenium.WebDriver

Sub 크롬테스트()
    크롬.Start "chrome"
    크롬.Get "http://www.naver.com"

End Sub

Sub 종료()
    크롬.Quit
    Set 크롬 = Nothing
End Sub

 

크롬으로 네이버가 열리게 하는 코드이다.

 

사용법은 따로 글을 작성해야 할 듯;;

넘 길어지네 ㅎㅎ;;;;

 


3. 크롬 업데이트 중지

만일 셀레니움 사용중 다음 메세지를 본다면 크롬 웹드라이버를 새로 받아줘야한다.

오류 원인: 내 PC에 설치된 크롬 버전과 셀레니움 베이직 폴더안에 크롬 웹 드라이버 버전이 맞지 않아서 발생하는 오류다.

해별 방법: 셀레니움 베이직 폴더의 크롬 웹 드라이버를 크롬 버전으로 변경(1.2 크롬 웹 드라이버 다운로드 참조)

 

 

해결방법은 되게 단순하지만 귀찮음을 유발 할 수 있기에 크롬 업데이트를 중지하는 방법도 알아보자.

윈도우키 + r 눌러서 실행 창 열고 msconfig 입력 후 확인 클릭.

 

그러면 시스템 구성이라는 창이 나타나는데 서비스 탭으로 들어가서 Google 업데이트 서비스 항목 두 개를 체크해지 한다.

확인까지 누르면 크롬은 현재 버전을 계속 유지하게 된다.


 

반응형