6. 2 설계 및 구현

웹 로봇 예광탄 작성에 앞서 웹 로봇 라이브러리에 필요한 형식을 역할에 맞게 설계를 먼저 합시다. 참고로 설계 및 구현의 결과로 보여주는 소스 파일은 웹 로봇 라이브러리 소스 파일입니다.

웹 로봇에는 웹 페이지를 수집하는 역할이 있어야 합니다. 웹 로봇에는 수집한 원본이 있어야 합니다. 웹 로봇에는 수집한 사이트와 사이트 내의 링크의 컬렉션을 알아야 다음 수집 대상 사이트를 확장할 수 있습니다.

웹 페이지를 수집 요청을 하였을 때 요청한 작업을 완료하면 수집한 정보를 제공해야 하는데 이 부분은 이벤트 핸들러 형태의 대리자 형식을 정의하고 이벤트 인자를 정의해야 합니다.

관리자의 요청에 따라 이와 같은 작업을 수행할 수 있는 클래스도 정의합시다.

[그림 6.2] 웹 로봇 라이브러리에 필요한 형식
[그림 6.2] 웹 로봇 라이브러리에 필요한 형식
이름 역할 이름 역할
WebCollect 웹 로봇 설정 및 가동 WebPageGetter 웹 사이트 수집
RawUrl 수집 웹 사이트 RawPostedPage 수집 웹 사이트와 링크
WebPostedEventHandler 수집 이벤트 WebPostedEventArgs 수집 이벤트 인자

[표 6.2] 웹 로봇 라이브러리의 형식과 역할