태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.


2009/06/15 21:48

AJAX Crawl: Making AJAX Applications Searchable

작성자 : 신대용(dosuser@naver.com)
1page로 논문 정리

저자

Cristian Duda , Gianni Frey, Donald Kossmann , Reto Matter , Chong Zhou

키워드

Ajax, crawal, ajax user event

목표

Ajax로인한 페이지의 변화도 검색하여 검색 품질을 향상시킨다.

방법

페이지에서 유저 이벤트를 추출해서 상태를 만들고 그 상태를 이용해서 AJAX페이지의 모든 결과를 얻어낸다.

응용대상

사이트 다운로드, 악성코드 작성과 탐색



Ajax페이지는 페이지 내의 이벤트 상태를 Cashing할 수 없고 랜더링을 위한 자바스크립트를 구별할 수 없으며 이벤트가 very granular하고 끊임없이 호출되는 문제로 인하여 CrwalIng하기 힘들다.

YouTube의 경우 코멘트가 Ajax로 나타나는데 일반 검색엔진은 검색결과에 Comment에 대한 내용은 포함 시킬 수 없다. 이러한 문제를 해결 하기 위해서 페이지에 존재하는 이벤트를 모델링한다. Figure3처럼 DOM에 포함되어 있는 관계 속에 모델링을 하기 위한 정보가 내제되어 있다. 그것을 기반으로 Fig.2처럼 페이지 내 상태를 만들고 Fig.4 처럼 페이지간의 상태를 나타낸다.





기존에는 페이지의 내용이 click 이벤트에 의해 다른 페이지로 이동한 경우에만 발생하였지만 지금은 Ajax를 통하여 페이지 내의 특정한 위치에 새로운 내용이 나타난다. 따라서 이 내용을 Crawling해야 하고 그러기 위한 이벤트의 추출이 필요하다. Table1은 그것을 정리한것이다.

 

 

 

페이지 내에 있는 이벤트를 가지고 상태와 상태전이를 알아내면 그것을 통해서 실제로 어떤 위치(흔히 DIV)에 내용이 바뀌는지 알 수 있다. 이 노드를 hot node라 하고 이 DOM 노드의 내용을 바꾸는 것을 hot call이라 한다. hot call들을 식별 해 내고 이에 따른 상태변화를 캡쳐 하면 Ajax페이지에 대한 크롤링이 수행된다. 수행시 지수시간으로 수행 해서는 안되며 페이지는 CRUD C,U,D는 제외한다. 페이지에 폼은 없으며 이미지에 기반한 검색은 제외한다.

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 Comment 0