크롤링
Crawling
개념
검색 봇이 링크를 따라다니며 페이지를 읽어 가는 과정으로, 검색 결과에 오르기 위한 첫 단계입니다.
등장 배경
글을 올렸는데 한 달이 지나도 검색 결과에 나오지 않는 일이 흔했습니다. 원인을 찾을 방법이 없으니 결론은 대개 검색 엔진이 우리 사이트를 좋아하지 않는다는 쪽으로 났고, 그 결론으로는 아무것도 고칠 수 없습니다.
실제 원인은 대부분 더 앞에 있었습니다. 검색 봇이 그 페이지에 닿은 적이 없는 것입니다. 봇은 주소를 상상해 내지 못하고 어딘가에 걸린 링크로만 새 페이지에 갑니다. 새 글 서른 편을 올렸는데 어디에도 그 주소가 걸려 있지 않으면, 사이트 안에 분명히 있는 글이 검색 엔진에게는 없는 글입니다.
그래서 순서를 갈라 부르게 됐습니다. 봇이 페이지를 읽어 가는 일과 읽은 것을 검색 대상 목록에 올리는 일은 별개입니다. 크롤링은 앞쪽 일의 이름이고, 검색에 안 나오는 페이지를 볼 때 먼저 확인하는 자리입니다.
작동 방식
봇은 이미 아는 주소에서 시작해 그 페이지에 걸린 링크를 따라 다음 페이지로 옮겨 갑니다. 네 단계로 돕니다.
- 시작 주소를 모읍니다. 전에 다녀간 주소, 사이트맵 파일에 적어 둔 주소, 다른 사이트가 우리를 걸어 둔 링크가 출발점이 됩니다.
- 페이지를 내려받아 링크를 뽑아냅니다. 뽑히는 것은 문서에 실제로 적혀 있는 주소뿐입니다. 눌러도 주소가 바뀌지 않는 방식으로 만든 목록은 봇이 따라갈 링크가 없습니다.
- 새로 찾은 주소를 대기열에 넣고 순서대로 방문합니다. 대기열이 길면 뒤쪽 주소는 며칠 뒤에 갑니다.
- 다시 올 주기를 정합니다. 자주 바뀌는 페이지는 자주 오고, 반년 동안 그대로인 페이지는 드물게 옵니다.
막히는 자리는 셋입니다. 어느 페이지에서도 링크가 걸려 있지 않은 주소, robots.txt 파일로 들어오지 말라고 적어 둔 경로, 로그인해야 보이는 화면입니다. 세 번째는 막는 것이 맞는 경우가 많지만, 첫 번째는 대개 실수입니다.
한 사이트에 쓰는 여력에는 한도가 있고 이것을 크롤 예산이라 합니다. 쓸모없는 주소가 수만 개 쌓여 있으면 봇이 그것들을 도는 동안 새 글에 늦게 옵니다. 검색에 걸릴 필요 없는 주소는 막아 둡니다.
실무 용례
"이 글이 검색에 없어요. 긁어는 갔는지부터 확인하죠."
원인을 순서대로 좁히자는 말입니다.
"새 글에 목록 페이지 링크가 안 걸려 있어요. 봇이 갈 길이 없습니다."
링크가 없어 닿지 못하는 상태라는 지적입니다.
"필터 조합으로 만들어진 주소가 4만 개예요. 막아야 합니다."
쓸모없는 주소가 여력을 먹고 있다는 뜻입니다.
페이지덱 블로그에서 현우가 이 문제를 겪었습니다. 새 글 스물두 편이 검색에 하나도 잡히지 않았는데, 태오가 보니 블로그 목록이 주소를 바꾸지 않는 방식이었습니다. 주소가 바뀌는 방식으로 고친 뒤 2주 안에 스물두 편이 전부 검색에 나왔습니다.
자주 헷갈리는 용어
| 용어 | 무엇을 하는 단계인가 | 크롤링과의 차이 |
|---|---|---|
| 색인 | 읽어 간 페이지를 검색 대상 목록에 등록 | 뒤에 오는 단계입니다. 봇이 다녀갔는데도 내용이 얇거나 다른 페이지와 겹친다고 판단되면 목록에 오르지 않습니다 |
같이 보면 좋은 페이지
마지막 업데이트 2026-09-16