2011. 6. 18. 01:10

Geeks_PriceWatcher

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
안녕하세요.

Geeks_company 입니다.

현재 사정상 회사를 폐업중이지만, 그래도 Geeks란 이름을 달고 써야 할듯해서 적습니다.

Geeks_PriceWatcher는 UI가 없는 콘솔상의 application or module 입니다.

Geeks_PriceWatcher는 제가 개발한 모듈을 토대로 작성되 었으며, 사용된 모듈은 이러 합니다.

Dynamic Dll Loader ( 파싱시 필요한 함수를 동적 업데이트를 위해 부분적 사용 )
Geeks_Cryptography ( SMTP 사용시 계정 및 해당 계정 암호를 암호화 하기 위해 사용 )
Geeks_SMTP ( 이메일 발송을 위해서 사용 )
IniFile(Codeproject)
이 모듈의 간략한 기능은 open 된 웹페이지에 특정 정보만을 선별적으로 파싱 처리 한후 이메일로 발송하는게 주요 기능입니다.

이 모듈의 핵심은 다양한 웹페이지 상황을 고려하여 , 특정 단어(keywords)를 토대로, 자신이 찾고 싶은 정보의 앞 뒤 태그를 ini 파일에 저장 하는데 있습니다.

이렇게 저장된 ini 파일은 매번 실행 할 때마다 읽혀 지게 되므로, 동적으로 환경 설정을 하여 사용 할 수 있습니다.

현재는 ini 로 처리가 되어도 큰 문제가 없기에 ini 를 사용하지만, 특정 함수를 적용하여 파싱 처리해야 될 부분이 있는 웹페이지(쿠키 사용/패킷 체크/ 동적 암복호화...)가 적용 되면 , dll을 활용하여 동적으로 처리 가능합니다.

이모듈의 사용처는 주로 자신이 관심있는 물품의 경우 자동으로 갱신된 특정 정보를 자동으로 받아 보고 싶을때 유용한 모듈이며, 간략한 사용예는 아래와 같습니다.

사용예
 - naver의 부동산 매물 가격이 변동시 알고 싶을때
 - 11번가의 특정 상품의 가격이 변동시 알고 싶을때
 - Amazon에서 특정 상품의 가격을 일정 가격으로 얻고 싶을때
 - 환율 정보
 - 각 나라별 인구 증가 추이 및 현재 인구 수
 - 카운트 다운이 시작한 제품의 현재 카운트
 - 시간 interval 지정.
 
사용 불가능 예
 - 가격 및 특정 정보가 클릭을 한 후에 보여지는 품목들(Gmarket의 클릭 후 보여지는 가격들)
 - Flash를 활용 하여 가격을 보여주는 페이지.
 - Time 같이 해당 Local PC의 정보를 토대로 웹페이지 갱신시키는 항목들.
 - AJAX 같은 기술을 활용하여 동적으로 페이지를 로딩하는 부분.

향후 버전업을 하게 추가될 기능
SMS 발송 - 3rd party 의 컴포넌트 사용
Twitter 지원.
해당 웹 페이지 상의 캐릭터셋 인코딩 지원
Thread Pool 패턴 적용 하여 performance 향상.
POP 모듈을 활용 하여, 받은 메일 분석 및 mergy

화면 캡쳐를 통해서 설명 드리겠습니다.

가격 정보를 갖고올 웹페이지 입니다.


간략한 소스 내용은 이러합니다.

환경 설정 파일을 ini 형태로 해서 저장 합니다.

설정 파일에 저장된 링크를 읽어와 처리 후 메일 전성된 후의 모습입니다.


짧게 짤라서 붙여 넣은 사진인데요. 6:59:38초에 발송이 이뤄졌지만, 도착은 7:02:31초에 되었습니다.

발송한 내역을 보여 드립니다.

재 확인차 일정한 딜레이를 준후 해당 링크를 읽어 온 후 이메일 발송 여부를 체크 합니다.


파싱된 데이터가 변동된게 없으므로, 이메일 발송이 되지 않았음을 확인 합니다.

'Geeks_Company 자료' 카테고리의 다른 글

Geeks_PFXUtilizer  (0) 2011.07.13
Geeks_JavaDESForCShap  (0) 2011.07.10
Geeks_WebPageReader  (0) 2010.12.02
Dynamic Dll Loader 입니다.  (0) 2010.08.24
Geeks_Compression  (0) 2010.05.03