본문 바로가기
IT/Selenium

[Selenium] selenium 크롤링 실행 후 작업 관리자 크롬 프로세스 문제

by se-black 2024. 4. 20.

발생한 문제

Java에서 selenium을 사용하여 크롤링 관련 개발을 진행하였는데, 여러 번의 크롤링 작업 후에 코드 실행이 점점 느려지며 노트북 역시 뜨거워지고 느려졌다. 분명히 selenium 사용 후 driver.quit()을 통해 크롬 드라이버를 종료해주었는데 말이다..

 

처음에는 내 노트북 문제인가 하고 몇 가지를 확인해보았지만 노트북에는 문제가 없었다. 그러던 중, 작업 관리자를 확인해보니 아래와 같이 백그라운드 프로세스에 크롬 프로세스가 엄청난 CPU 이용률을 차지하며 쌓여있는 것을 발견했다. (심할 때는 70%를 넘게 차지하고 있었다...)

 

해결

그래서 구글링을 해보니 나와 비슷한 상황을 겪은 분들이 꽤 있었다.

기존 driver.quit()을 해줘도 크롬 프로세스를 완전히 종료해주지 않는 것 같았다..

 

따라서 크롬 드라이버 프로세스를 강제로 종료해주는 아래의 코드를 추가해야했다.

Runtime.getRuntime().exec("taskkill /f /im chromedriver.exe /t");

 

후기

코드 추가 후 처음에는 크롬 프로세스가 모두 종료되는 것 같더니 몇 번 실행해보니 왜인지는 모르겠지만 이전과 같이 계속 남아 CPU를 차지했다...ㅎ

 

마지막에는 혹시 몰라 for문을 통해 해당 코드를 5번 반복해주니 이상하게도 문제가 해결되었다....ㅎㅎ

혹시 완벽한 해결방안을 찾으신 분은 댓글 남겨주시기 바랍니다..

728x90