Debugging&Solution/Debugging

[Debuging] Selenium 을 이용한 자동 로그인 모듈에서 Headless 모드에서만 No Such Element 에러 날때

코딩의성지 2020. 4. 26. 16:14

Selenium을 이용해서 구글에 자동로그인을 하는 프로그램을 만들던 도중 그냥 할때는 잘되는데, 

Headless 설정만 해주면 Element들을 못 찾는 문제가 발생했다 .

 

왜 그런지 검색을하다가 알게된 사실은, 보통 크롬 브라우저의 경우 아래와 같은 User-Agent 의 정보를 가지고 있다.

 

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.122 Safari/537.36

 

그런데 Headless 로 요청할 때는 HeadlessChrome 이라고 User-Agent가 세팅되는 것을 알 수 있었다.

 

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/81.0.4044.122 Safari/537.36

 

이때 세팅을 강제로 Chrome으로 바꿔주면 된다.

 

 

이렇게 한 뒤에, 프로그램을 돌려보면 문제가 해결되는 것을 알 수 있다.

반응형