개발일지/C#

[C#] WebDriverManager - 크롤링 프로그램 제작시 chromedriver 자동 설치

연습용365 2025. 5. 2. 15:27

 

크롤링 프로그램 제작시 사용하고 있는 크롬 업데이트를 막아놔도 업데이트 되는 경우가 있다. 이러한 경우 전에는 수동으로 크롬드라이버를 변경했었는데 이게 꽤 귀찮은 작업이라서 

 

 

WebDriverManager.Net 사용법
1. Visual Studio에서 NuGet 패키지 설치
* [도구] → [NuGet 패키지 관리자] → [패키지 관리자 콘솔]

아래 입력

Install-Package WebDriverManager

 

Install-Package : 현재 환경에 열려 있는 솔루션이 없습니다.

디버깅시 위와 같은 에러 뜰 때 .sln/.csproj 파일 열고 입력해야 됨

 




2. 추가

using WebDriverManager;
using WebDriverManager.DriverConfigs.Impl;
using OpenQA.Selenium.Chrome;

new DriverManager().SetUpDriver(new ChromeConfig());
var driver = new ChromeDriver();

 

new WebDriverManager.DriverManager().SetUpDriver(new WebDriverManager.DriverConfigs.Impl.ChromeConfig());
_driver = new ChromeDriver();

 

 

세팅시 위와 같이 파일 내에 선언 후

아래 예시처럼 사용하면 됨

크롬 드라이버 연결시 에러날 경우가 있으니 try-catch 사용 

 

        public static void SetupChromeDriver()
        {
            try
            {
                // WebDriverManager로 chromedriver 자동 다운로드 + 경로 세팅
                new WebDriverManager.DriverManager().SetUpDriver(new WebDriverManager.DriverConfigs.Impl.ChromeConfig());

                // ChromeDriver 직접 생성 (서비스, 경로 따로 필요 없음)
                _driver = new ChromeDriver(chromeOptions);

                Debug.WriteLine("commondata.DriverUrl 값: " + commondata.DriverUrl);

                _driver.Url = commondata.DriverUrl;  // 여기서 null이면 에러
            }
            catch (Exception ex)
            {
                MessageBox.Show("SetupChromeDriver 예외: " + ex.Message);
            }
        }