Python/Small Project

[Python]LG그램&뉴진스 YouTube M/V 댓글 크롤링 후 텍스트 마이닝 시각화 해보기

sohyunkimmm 2023. 1. 31. 17:17
728x90

* LG그램 & 뉴진스

- 최근 LG전자가 뉴진스와 협업해서 출시하는 한정판 노트북 'LG그램 스타일'이 큰 이목을 이끌었다. 

- 유튜브에 '아름다워'라는 곡으로 공식 뮤비가 올라온지 5일이 지난 현재(01/31), 조회수는 약 190만회를 기록했다. 

- 댓글들을 전체적으로 살펴보면 LG의 이번 콜라보에 대한 호의적인 반응이 주였는데, 모든 댓글을 파이썬으로 크롤링해서 수집한 뒤 가장 많이 등장한 단어들을 한눈에 보면 소비자 반응을 더 직관적으로 볼 수 있지 않을까 생각해보았다. 

- 그럼 미니 프로젝트 시작! 

 

 

* official M/V

https://www.youtube.com/watch?v=CjylrN6SrUU 

 

 

 

1. 네이버 데이터랩 검색량 확인

- 프로젝트를 본격적으로 시작하기에 앞서, 네이버 데이터랩에서 'LG그램'과 '뉴진스'의 최근 1년동안의 검색량을 확인해보았다. 

- LG그램은 작년 1월 경 2022년형 LG그램이 출시된 시기보다, 현재 뉴진스와의 콜라보 이후에 훨씬 압도적인 검색량이 나왔다. 

- 뉴진스 또한 작년 여름 데뷔 이후, 현재의 검색량이 데뷔시기의 검색량과 거의 비슷한 추이를 보이고 있다. 

- LG그램&뉴진스 콜라보가 얼마나 파급력이 컸는지 가늠해볼 수 있었다. 

LG, 뉴진스의 검색량 추이 비교 (네이버 데이터랩)

 

 

 

2. 댓글 크롤링_YouTube Data API

- 원래는 selenium(셀레니움) 패키지를 사용해서 댓글을 크롤링해보려 시도했으나, 어떤 이유에선지 chromedriver을 가져오는 부분에서 계속 -6 에러코드가 발생해서 다른 방법으로 시도했다. 

(3시간의 시도 끝에 포기🥹)

 

- Python과 Google에서 제공하는 Youtube Data API를 사용해서 댓글을 크롤링 해보기로 했다. 

- 이 방법으로 크롤링하기 위해서는 개인 API key를 발급 받아야 하는데, 나는 아래의 블로그를 참고하여 키를 생성했다. 

➡️ 답답하던 찰나에 빛과 소금이 된 블로그: https://untitledtblog.tistory.com/169 

 

Python을 이용한 이용한 유튜브 (YouTube) 댓글 수집

1. YouTube Data API YouTubue 댓글 수집에는 Google에서 제공하는 YouTube Data API를 이용하는 방법과 동영상이 게시된 HTML 문서에서 직접 데이터를 크롤링 (crawling)하는 방법이 있다. 그러나 크롤링 방식은 Yo

untitledtblog.tistory.com

- 해당 블로그를 참고하여 Google API 프로젝트를 생성하고 YouTube Data API를 활성화 시킨 후, API 키를 발급 받았다. 

 

- 이후 파이썬 코드를 통해 댓글을 크롤링 해보았다. 

 

필요 패키지 설치

 

필요 함수 불러오기

 

위에서 발급받은 개인 API코드를 develpoerKey(네모 칸 안)에 붙여넣으면 된다

 

원하는 영상의 VideoID(네모 안) 넣기

 

*(참고) Video ID는 어디 있는가?

: 원하는 영상의 url 맨 뒤 v= CjylrN6SrUU가 바로 video id이다 

VideoID 확인

 

코드 완성!

 

- 코드를 다 돌린 후, 파일을 들어가면 results.xlsx가 생성된 것을 볼 수 있다. 

 

 

- 파일을 다운로드 받아서 확인해 보면 comment, author(유저ID), date, num_likes(좋아요 수)가 열 방향으로 들어가있는 것을 볼 수 있다. 

유저ID는 모자이크처리하였다

 

- 텍스트 마이닝을 진행하기 위해 모든 comment를 복사해서 txt파일로 만들었다. 

 

 

 

3. 텍스트 마이닝 시각화

- 이제 크롤링해온 댓글들을 텍스트 마이닝으로 만들어 시각화해보자. 

 

필요 패키지 불러오기

 

google drive에서 txt파일 열기

 

모든 댓글들이 article_txt로 불러와졌다.

 

전체 데이터에서 명사(Noun), 형용사(Adjective) 추출

 

결과값을 확인하면서 제외시킬 단어를 추가시켜나갔다

 

가장 빈도수가 높은 단어 50개 출력하기

 

WordCloud로 시각화하기! 뉴진스그램과 비슷한 색상계열인 "PuBuGn"으로 결과값을 확인해보았다.

 

결과값

 

* 예상했던 단어들과 흥미로운 단어들 모두 발견되었다. 

- 예상했던 단어: 뉴진스, 그램, 엘지, 예쁘다, 대박, 마케팅 등

- 흥미로운 단어: 맥북, 윤수일, 스텔라, 음원, 노래, 레트로, 폼, 사고(싶다)

 

- 개인적으로 가장 흥미로웠던 단어는 '맥북', '윤수일', '스텔라', '폼'이었다. 

 

1) 맥북

: 대부분의 '맥북' 댓글들이 이번 뉴진스 콜라보 LG그램이 맥북에 견줄만한 디자인이라는 것을 얘기하고 있다. 요즘 새롭게 나오는 IT 기기 중 최고의 찬사와 반응을 얻고있지 않나 싶다. 

 

 

2) 윤수일 & 스텔라

: '아름다워'라는 뮤비 속 노래가 가수 '윤수일 밴드'의 곡이라는 사실을 나 또한 이번 결과를 통해 알게되었다. 레트로한 컨셉의 광고여서 컨셉에 맞는 음악을 제작한 줄 알았는데, 윤수일밴드의 1984년 곡을 뉴진스가 아닌 가수 '스텔라 장'이 리메이크해 부른 것이었다! 레트로한 컨셉과 노래를 통해 10, 20세대에게는 새로움을, 그 윗세대에게는 향수를 불러 일으켜 전 연령층의 관심을 이끄려는 전략이었음을 생각해 볼 수 있었다. 알고보니 더 대단한 광고였구나..

 

 

3) 폼

: 요즘 '~~ 폼 미쳤다' 라는 말이 유행인데, 댓글에서도 많이 보이는게 흥미로웠다. 요즘 시대 최고의 칭찬!

 

 

 

 

<참고>

* 다양한 키워드 추출 방법 코드

1) Hannanum(카이스트 클래스)

내가 사용한 코드보다 더 다양하게 키워드가 추출된다(단어+반응)
이모티콘도 추출된다

 

2) Kkma(서울대학교 클래스)

여기서는 키워드가 제대로 추출되지는 않았다

 

 

3) Okt(오픈소스)

깔끔하게 단어들만 추출되었다

 

 

 

 

(포스팅을 마치며...)

뻔한 결과물이 나올까봐 시작하면서도 걱정했지만, 결과물을 보니 굉장히 흥미롭다. 

이 정도 수준의 긍정적인 단어로만 이루어진 결과가 얼마나 대단한지는, 다른 IT기기 출시 기사 or 컨텐츠 / 다른 브랜드의 콜라보 사례의 댓글을 크롤링&시각화해서 이번 결과와 비교해보면 더 잘 느낄 수 있을것 같다! 

 

 

728x90
반응형