본문 바로가기

DEV/C#

크롤링으로 나라장터 검색-크롬드라이버 업데이트

반응형

 개요

2021.08.23 - [DEV/C#] - 크롤링으로 나라장터 검색-소스 및 실행파일 공개

 

크롤링으로 나라장터 검색-소스 및 실행파일 공개

 코드 앞서 설명한 내용을 기반으로 구현한 소스파일입니다. 용량상 bin 폴더에 필요한 자료들 chromedriver.exe, System.Data.SQLite.dll, WebDriver.dll, WebDriver.Support.dll 등이 없으니 이전 글을 참고하..

sound10000w.tistory.com

실행파일을 공개 후 실제 사용 시 크롬 버전이 올라가는 경우 크롬 버전과 크롬드라이버 버전이 맞지 않아서 실행 오류가 발생했습니다.

오류 발생 시 마다 드라이버를 다운 받아 드라이버 파일을 교채해서 사용했습니다만 매번 교체하기가 불편하여 찾아 보던 중 드라이버 업데이트를 할 수 있는 소스를 발견하여 추가하였습니다.

크롬드라이버 다운로드 주소 :  https://chromedriver.chromium.org/downloads
크롭드라이버 업데이트 원문 : https://chashtag.tistory.com/81?category=937944

 

[C#] [Nuget] ChromeDriver.exe 자동 업데이트 라이브러리 (ChromeDriverUpdater)

안녕하세요. "뭐 이런 걸 다 만들어주시고" 의 첫 번째 게시글입니다. 하하 "뭐 이런 걸 다 만들어주시고" 는 누군가는 시답잖다고 이런 걸 굳이 만들어야 될까라고 생각할 만할 것들을 개발로 구

chashtag.tistory.com


 변경 소스

 

도구 > Nuget 패키지 관리자 > 솔루션용 Nuget 패키지 관리 로 이동하여 ChromeDriverUpdater 를 검색합니다.
안정된 최신버전을 설치합니다.

using ChromeDriverUpdater;

//실행 경로 하위에 driver 폴더를 만들어서 사용
private string _driverPath = Application.StartupPath + @"\driver\";

public partial class FormSearch : Form
{
    //Form Init 시 모듈 업데이트를 체크한다.
    //사용 시 _driverService = ChromeDriverService.CreateDefaultService(_driverPath);
    //업데이트 경로를 지정하여 사용
    public void updateCheck()
    {
        //모듈 업데이트
        try
        {
            //new Updater().Update(Application.StartupPath + @"\chromedriver.exe");
            new Updater().Update(_driverPath + "chromedriver.exe");
        }
        catch (UpdateFailException exc)
        {
            // ...
            textBoxLog.Text += exc.ToString();
        }
    }
}


* 전체 소스는 테스트 및 검증 후 올리겠습니다.

 

반응형
댓글