이런저런 이야기들

하루종일 삽질 - CF(movie) / (2) - 데이터 모으기 (실패)

mkk4726 2023. 7. 5. 18:36

추천시스템을 직접 수집한 데이터로 진행하고 싶어서  시간을 투자했다.

어제 코드짜고, 오늘 쭉 돌려서 데이터 수집 후 CF를 진행했는데 결국 실패했다.

 

내가 원하는 데이터는 유저별 영화 평가 데이터이다.

수집한 데이터 결과

딱 보기에도 NaN값이 너무 많다.

 

내가 시도한 방법은 IMDb에는 review와 함께 평점을 입력하는데, 여기에 유저이름이 있다.

따라서 이 리뷰데이터를 쭉 긁어오면 유저-영화-평점 , 이런 데이터를 확보할 수 있게 되는 것이다.

 

이 과정에서 여러 걸림돌이  있었는데, 먼저 Load More 버튼을 반복해서 눌러줘야 전체 리뷰를 확인할 수 있다.

따라서 동적크롤링으로 이걸 눌러줘야하는데, 시간이 기존의 10배이상이 걸린다.

시간이 너무 오래걸리니 투표횟수가 많은 영화만 걸러서 4000개의 영화만 추렸다.

그래도 기존 scraping시간보다 약 5배정도가 더 걸렸다.

 

기존 (16000개 -> 1시간 30분) , 이번 ( 4000개 -> 5시간 45분)

 

두 번째 걸림돌은 런타임 중에 chrome과 관련된 에러가 발생했다. 그래서 자는 동안 프로그램을 돌려놨지만 일어나보니 에러가 발생해, 오늘 하루종일 이거 뽑았다.

 

어쨋든 이렇게 뽑은 데이터로 CF를 진행하려 하니 , 직관처럼 너무 NaN값이 많아 진행할 수가 없다.

 

이번 실패의 이유는, 여러 영화에 공통적으로 평가한 유저가 너무 적다는 것이다.

리뷰 수가 많은 유저 id와 평가한 영화정보를 알 수 있으면 좋겠지만, 알 수가 없다.

 

영화 뿐만 아니라, 다른 추천시스템 프로젝트를 하면 이런 문제가 똑같이 발생할 것이기에, 이번 기회에 해결해보고 싶었지만 실패했다.

 

분명 누군가도 나와 같은 고민을 했을텐데, 이를 해결한 사례가 있는지 찾아봐야겠다.