typos 형님의 포스팅을 보다가, 다시금 생각나서 주절대 본다.
형님 말씀대로 예나 지금이나 크롤러의 가장 큰 지향점은 자바스크립트 처리인거 같다. 뭐 어제인가 나온 기사에서도 자바스크립트 처리와 인증관련 문제를 IE를 사용해 처리한다고 한다.
다시금 자바스크립트 처리에 대한 이야기가 나오는구나.
자바스크립트 관련 문제는 이쪽 일을 해본 사람들에게는 오래된 주제이다. 나도 이것 때문에 모질라 재단의 spider monkey를 사용해보기 까지 했다.
물론 spider monkey만 있어서는 절대 가능하지 않다.
Document Object를 불안정한 HTML기반에서 추출해내야 하고 그것을 Java script Object로 만들어서 로딩을 시켜서 spider monkey엔진과 연결을 해야 한다.
정말 우리나라 인터넷 환경에서 크롤링하기 필요한건 IE에서 쓰는 HTML파서일지 모른다. 강건한 파서….
이걸 동일하게 만드는건 왠만한 브라우저의 엔진을 만드는 작업일 정도일 것이다.
아마도 이런 작업들 때문에 IE를 사용한 크롤링 작업에 회사들이 눈독을 들이고 있는데, 이는 회사의 기술적인 한계와 자사 크롤러의 한계를 동시에 한정해 버리는 일이다.
물론 타켓팅한 마켓에 적절할 수도 있으나, 요즘같은 대용량 데이터가 만연한 시대에 무거운 IE엔진을 달고 골리앗처럼 엉금엉금 기어다니는 크롤러는 추후 분명히 장애물이 된다.
그리고 크롤러에 지능형이라는 말을 붙이려면 예를 들어 크롤러 자신이 자신의 크롤링 큐에 있는 URL중에 중요한 문서가 무엇인지 합리적으로 판단해서 크롤링 우선순위를 줄 정도는 되어야 지능형이라고 말할 수 있지 않을까?
그래서 대부분 지능형이라고 말하는 국내 크롤러들은 그냥 자동화 크롤러라고 제품명을 바꿔야 한다.
쓸만한 크롤러를 만드는건 아무나 하지 못하는 정말 힘들고 고된 작업이다. 인터넷에서는 예외가 너무 많기 때문이다.
또한 그런 예외를 하나하나 해결해 나가는 그 과정 자체가 노하우고 기술이다.
역시나 자바스크립트… by from __future__ import dream is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.