16P by chernobyl 2021-05-26 | favorite | 댓글 4개

- 그 동안 인터넷에 숱하게 소개된 웹 크롤러들은 대부분 '스크래퍼'이지 크롤러라고 부르기엔 어려움
- 글쓴이는 웹 크롤러를 정의하는 논문들을 간략히 소개중

- 크롤러는 인터넷 세상을 BFS, DFS 하는 어플리케이션이다.
- 로봇룰은 회사의 이미지를 결정 할만큼 매우 중요한 이슌데 모르는 스타트업도 많다.

작년에도 이 분 글을 읽고 왜 그리 삐딱하게 사시나 싶었는데, 그나마 좀 좋아진건지 모르겠네요.

현실적으로 따지자면, 말 그대로 검색 엔진 운용하시는 대기업 분들이 아니고서야...

크롤러를 사용한다 치더라도 텍스트 마이닝 분야의 경우 영어가 아니라면 전처리 비용이 크기 때문에, 저런 방식의 크롤러로는 양질 데이터 뽑아내기도 힘들고, 이미지 처리 분야는 양질의 데이터셋도 널린 판에 굳이 크롤러를 운용할 이유가 없죠. 괜히 저렇게 좋은 이론을 두고 스크래퍼가 판 치는게 아닙니다. 개고생해서 얻을 가치가 낮기 때문일 뿐이죠.

저 분이 말하는 완전한 크롤러라는 건 이론은 좋을지는 몰라도 결국 조금 높은 확률로 데이터를 추출하는 것에 불과해서, 요즘 인공지능이나 이런 분야에 사용하기는 어려운 계륵입니다. 유지 비용이 싼 것도 아니고, 추출된 데이터가 완전한 것도 아니고, 관리도 힘들고, 법적 문제도 많죠. 개인이나 기업이 그런 문제까지 고려하느니 그냥 대형 사이트에 스크래퍼 몇 개 돌리는 게 경제적입니다. 잘 분석하고 구축된 대형 사이트의 스크래퍼 한 개가 쓸모 없는 1만개 사이트 들락거리는 것보다 몇 백, 몇 천배는 경제적이고 편합니다. 크롤러 하나 광범위하게 "잘" 운영하려면 석박사님들 들러붙어도 어렵습니다. 크롤러를 모니터링까지 해서 로직 수정까지 하려면 더 끔찍하겠죠. 로그조차 어마어마할테니 그마저도 분산 처리 해야할테구요.

물론 크롤러가 핵심 근간이고 중요하다는 것에는 당연히 동의합니다만, 그런 주장을 굳이 1년 내내 스크래퍼와 급 나누기 하면서 이야기 할 필요가 있었을까 싶네요.

지금 보아도 저 분은 Scrapy는 왜 무시하는건지 이해가 안되네요. 적어도 gocolly 보다는 옵션이든 확장 프로그램이든 한참은 더 많을텐데 말이죠.

뭐 개인 관점에 따라 다르겠지만, 저도 빅데이터 수집 팀에서 일하는 사람이라 제 졸견을 남깁니다.

아직 미완성된 글이라 그런지 뭔가 있어야 할 내용이 빠진 것처럼 보이는 곳이 몇 군데 있네요.
중간에 재방문 스케줄링에서 언급된 [Lambda Crawl]이란 건 [Effective Page Refresh Policies For Web Crawlers](2003) 논문을 말하는 걸까요? 이 키워드로 검색해보면 AWS의 서버리스 서비스인 Lambda로 크롤링하니 어쩌니 하는 이야기만 잔뜩 나와서 말이죠. 정작 아래의 참고문헌 목록에는 이 논문이 안 보이는 것 같은데…
http://ilpubs.stanford.edu:8090/604/1/2003-44.pdf

Tractable near-optimal policies for crawling 이 논문에 등장하는군요