Day 16/17 - 미니프로젝트(넷플릭스 인기컨텐츠의 장르와 계절간의 관계)

2022. 10. 31. 21:00Python

이번 글에서는 이틀동안 진행한 미니프로젝트에 대해 간략하게 정리할 것이다.

이번 미니프로젝트의 핵심은 크롤링을 이용하여 특정 주제에 대한 데이터를 수집하고, 이를 바탕으로 데이터 분석 작업을 수행하는 것이었다. 우리팀은 2020년 9월부터 2020년 8월까지 전세계 넷플릭스 인기 컨텐츠 장르에 대한 자료를 수집하여 과연 계절과 넷플릭스 인기 장르 간의 관련이 있는지, 관련이 있다면 그것은 우리의 통념과 일치하는지 여부를 조사하고자 했다.

 

원래의 계획은 browserless 크롤링을 통해 flixpatrol에서 특정 기간 동안의 전세계 넷플릭스 인기컨텐츠 목록을 월별로 수집하고, 이 목록을 이용하여 tmdb에서 api크롤링을 이용해 해당 컨텐츠들의 장르를 수집하는 것이었다. 하지만, tmdb에서 api 크롤링을 수행하여 얻어낸 결과물을 처리하는데 문제가 발생했다.

genre부분이 genre_ids로, 리스트에 묶여진 숫자 형태로만 나타나는 모습이다.

tmdb에서 수집한 데이터의 장르 부분은 문자가 아닌 리스트에 묶인 숫자 id 형태로만 나타나 있었고, 이를 우리가 보고 판단할 수 있는 문자로 바꾸는데 실패해서 처음 계획대로 프로젝트를 수행하는 것은 불가능해졌다. 결국 flixpatrol에서 browserless 크롤링을 통해 월별 인기 차트 내 컨텐츠 목록과 해당 컨텐츠들의 장르를 모두 가져오기로 했다.

flixpatrol에서 browserless 크롤링을 수행한 코드 중 일부이다.

해당 크롤링을 통해 위에서 정한 기간의 월별 인기 컨텐츠 목록과 장르를 수집하여 계절별로 엑셀파일에 저장했다.

 

한 편, 우리는 계절의 영향이 있는지를 파악하기 위해서는 대조군이 필요하다고 생각했고, 그 대조군을 동일한 기간의 월별 남반구 국가들의 인기 컨텐츠 목록 및 장르로 정했다. 그 이유는 우선 남반구는 북반구와 계절이 반대이기 때문에 동일기간을 비교했을 때 계절의 영향이 있다면 좀 더 분명한 차이를 보일 것이라고 생각했기 때문이다. 또한, 지구의 인구가 대부분 북반구에 살고 있는 관계로 넷플릭스도 북반구 이용자가 더 많을 수 밖에 없고, 실제로 넷플릭스가 서비스되고 있는 국가들 중 남반구의 주요 국가들(호주, 아르헨티나, 남아공)의 인구를 합쳐도 일본의 인구에 못 미친다. 따라서, 넷플릭스의 전세계 인기차트에는 북반구 국가 사용자들의 영향이 훨씬 클 것이라고 보았기 때문에 남반구 국가들의 인기 컨텐츠 목록과 장르를 대조군으로 선택하였다.

 

flixpatrol의 경우 전세계 인기 차트와 국가별 인기 차트의 사이트 구조가 달랐기 때문에, 남반구 국가의 데이터 수집은 browser크롤링으로 진행했다.

flixpatrol에서 browser 크롤링을 수행한 코드 중 일부이다.

마찬가지로, 데이터를 수집하여 계절별로 나누어 엑셀파일에 저장하였다.

 

데이터 시각화 및 분석 결과는 다음 ppt에 자세히 나와있다.

https://docs.google.com/presentation/d/1Yce1RchtAZujPwe1DMq4nDzzrILShyUry9jOUw8LiLo/edit#slide=id.g17718f6f474_0_13

 

2022.10.27 4조 미니프로젝트

Netflix 데이터를 활용한 계절에 따른 영화 장르 인기순위 넷플릭스 전체와 남반구 데이터를 중점으로

docs.google.com

몇 가지만 정리해보자면,

  • 스릴러의 경우 우리의 통념과 같이 여름에 그 인기가 크게 증가하지만, 가을에도 인기가 유지되는 점이 우리의 기존 생각과는 다른 점이었다.
  • 드라마의 경우에도 우리의 통념과 같이 가을과 겨울에 인기가 크게 증가하고, 가을에 인기가 정점에 이른다.
  • 코미디와 애니메이션의 경우 계절의 변화와 상관없이 일정한 인기도를 유지한다.
  • 가을과 겨울의 변화가 시간이 가면서 그대로 적용된다면, 겨울의 그래프가 봄의 그래프처럼 변하게 되는 순환 현상이 일어날 수 있다는 점이 흥미롭다.
  • 종합하자면, 특정 장르의 경우 계절적 영향을 받는다고 할 수 있다.

 

다만 이 분석에는 한계가 존재한다. 이 한계는 크게 두 가지로 나누어 정리할 수 있는데,

  1.  근본적으로, 인기 장르에 계절만 영향을 주지는 않는다.
  2.  과연 계절 별 인기 장르 변화에 계절 변화가 영향을 준 것이 맞는지 알 수 없다. 단순히 그 당시에 배급사나 제작사가 해당 장르를 많이 개봉하고 프로모션한 영향일 수도 있다.

시간이 그리 많지 않았고, 더구나 팀원 4명 모두 크롤링을 해보는 것이 처음이라 데이터 수집에 너무 오랜시간이 걸려서 데이터에 대한 세밀한 분석을 하지 못한 점이 아쉬운 점이다. 모든 컨텐츠와 장르를 모은 dataframe에 계절 컬럼을 추가하여 상관계수를 알아보는 분석 등 다양한 방법을 생각 했으나, 그러한 생각들을 했던 시점이 발표 2-30분 전이었다는 것이 안타까운 점이었다. 분석에 미진한 점이 매우 많았기 때문에, 기회가 된다면 이 프로젝트를 협업했던 팀원들과 함께 좀 더 다양한 측면에서 분석을 해보고 싶은 마음이다.

'Python' 카테고리의 다른 글

Day 19 - Titanic 데이터 실습  (0) 2022.11.02
Day 18 - 데이터 전처리  (0) 2022.11.01
Day 16 - api 크롤링  (0) 2022.10.31
Day 15 - try ~ except 구문  (0) 2022.10.25
Day 15 - 데이터 시각화  (0) 2022.10.25