headless 브라우저 감지 회피하기

Web|2023. 6. 9. 05:41

Puppeteer나 Playwright같은 headless 브라우징으로 웹페이지 scaping하는 경우가 많은데, 많은 웹사이트들이 headless브라우저를 감지하고 접근을 차단하고 있다. 이를 어떻게 회피하는지 알아보자.

우선 아래 페이지를 headless 브라우저로 접근하면 일반적인 웹브라우저와 headless브라우저가 어떻게 다른 결과가 나오는지 알 수 있다.

https://infosimples.github.io/detect-headless/

사실 이것말고도 더 많은 방법이 있지만, 이 정도가 알려져있다. 이런 것들을 쉽게 구현해주는 Puppeteer plug-in이 이미 만들어져있다.

https://www.npmjs.com/package/puppeteer-extra-plugin-stealth

reCAPCHA도 대응가능하다.

상용 Proxy 서버 사용

당연히 IP도 체크하므로 상용 Proxy 서버를 사용하는 것이 좋다. 상용 서비스는 Proxy 서버를 rotation해서 여러 IP를 사용하도록 해준다.

사실, 창과 방패의 싸움이라 clludflare같은 회사에서는 headless 브라우저를 잘 감지한다. 가장 확실한 방법은 상용  Proxy server와 함께 사용하는 것이다. 비용은 들지만, 가장 확실한 방법이기도 하다.

 

댓글()