솔직히 고백하겠습니다. 저는 불과 작년까지만 해도 ‘순위 강박증’ 환자였습니다.
새벽 3시에 자다가도 벌떡 일어나서 스마트폰을 켰습니다. 클라이언트 사이트 순위가 떨어지지는 않았는지, 경쟁사가 치고 올라오지는 않았는지 확인해야만 다시 잠이 왔으니까요. SEO를 업으로 삼는 사람이라면 누구나 겪는 직업병일 겁니다.
하지만 인간은 기계를 이길 수 없습니다. 제가 잠든 사이 경쟁사가 새벽 기습 공격(Negative SEO)을 감행하면, 저는 아침 9시가 되어서야 뒤늦게 사태를 파악하고 수습하느라 진땀을 뺐습니다.
그래서 결심했습니다. 나 대신 24시간 눈을 뜨고 있는 녀석을 만들기로요. 오늘 소개할 기술은 저희 Team Black SEO의 심장과도 같은 ‘자체 개발 순위 감시 봇’에 대한 이야기입니다.
1. 왜 시중의 툴을 쓰지 않는가?
물론 시중에도 순위 추적 툴은 많습니다. 하지만 그들은 ‘너무 느립니다’.
대부분의 상용 툴은 하루에 한 번, 혹은 12시간에 한 번 크롤링합니다. 전쟁 같은 블랙 키워드 시장에서 12시간이면 이미 상황 종료입니다. 게다가 그 데이터는 누구에게나 공개된 데이터입니다.
저희에게 필요한 건 ‘실시간’이었습니다.
- 10분마다 지정된 키워드 500개를 검색할 것.
- 순위 변동이 감지되면 즉시 텔레그램으로 알람을 보낼 것.
- 경쟁사가 새로운 백링크를 걸면 바로 찾아낼 것.
이 조건을 만족하는 툴은 없었습니다. 그래서 Python과 Selenium을 이용해 직접 짰습니다.
2. 구글 봇과 숨바꼭질
개발 과정은 쉽지 않았습니다. 구글은 바보가 아닙니다.
같은 IP에서 10분마다 검색 쿼리를 날리면 구글은 바로 “너 로봇이지?” 하고 캡차(CAPTCHA)를 띄워 차단해버립니다. 이걸 뚫는 것이 기술의 핵심이었습니다.
저희는 ‘헤드리스 크롬(Headless Chrome)’ 기술에 ‘동적 유저 에이전트(User-Agent)’ 시스템을 입혔습니다. 쉽게 말해, 봇이 접속할 때마다 “나는 아이폰 14다”, “나는 윈도우 쓰는 대학생이다”, “나는 갤럭시 탭이다”라고 신분을 계속 바꾸게 만든 겁니다.
여기에 수백 개의 유동 IP를 태워 보내니, 구글조차 이것이 봇인지 실제 사람인지 구분하지 못하게 되었습니다.
3. 이제는 알람이 울릴 때만 일합니다
이 시스템을 도입한 후 제 삶의 질은 완전히 달라졌습니다.
이제 저는 새벽에 억지로 깨지 않습니다. 봇이 경쟁사의 순위 하락이나 급상승 징후를 포착하면, 제 스마트워치로 진동을 보냅니다.
“경쟁사 A업체, 키워드 ‘강남OO’ 3위 → 7위 하락 감지.”
이 알람이 오면 그때 일어나서 확인하면 됩니다. 경쟁사가 공격받아 떨어질 때가 저희가 치고 올라갈 골든타임이니까요. 남들보다 반나절 빠르게 대응하니 순위 방어율이 99%에 육박하는 건 당연한 결과입니다.
시스템은 거짓말을 하지 않습니다. 감이나 운에 맡기는 SEO는 이제 끝났습니다. 데이터와 자동화로 무장하지 않으면 살아남을 수 없습니다.
이렇게 24시간 긁어모은 데이터가 폭증하다 보니, 기존 서버로는 감당이 안 되는 지경에 이르렀습니다.
돈을 벌었으면 장비에 투자해야죠. 그게 기술팀의 자존심 아니겠습니까.