ML, DL & Python/Youtube 크롤링 & 분석
-
유튜버 분석ML, DL & Python/Youtube 크롤링 & 분석 2019. 5. 25. 17:10
이번 포스팅은 문득 생각난 의문에서부터 시작한 분석입니다. "유튜버들은 왜 자극적인 제목으로만 사람들의 관심을 끄는 것인가?" 그래서 유튜버들에게 맞춤 키워드를 추천해줄 수 있으면 어떨까 라는 생각을 하게 되었습니다. 따라서 본 포스팅에서는 한 유튜버 "테스터 훈"을 선택해 영상정보들을 수집하여 분석을 시작해보도록 하겠습니다. 1. 테스터훈 영상정보를 수집하겠습니다. 제가 필요한 정보는 영상에 직접 들어가서 수집해야하는 데이터이기 때문에 먼저 각 영상별 url을 수집하도록 하겠습니다. html0 = browser.page_source html = BeautifulSoup(html0,'html.parser') video_ls=html.find_all('ytd-grid-video-renderer',{'cla..
-
youtube text mining3ML, DL & Python/Youtube 크롤링 & 분석 2019. 5. 11. 15:10
저번 포스팅에서는 word embedding와 word2vec을 사용하여 단어를 벡터화하고 벡터공간에 뿌린 뒤에 단어들의 유사도를 확인해보았습니다. 이번 포스팅에서는 벡터공간에 뿌려진 단어들의 밀집정도와 어느 단어들끼리 묶여있는지 확인하기 위해서 군집분석을 진행해보겠습니다. 저는 단어들을 스스로 학습하여 epsilon과 min_scale을 이용하여 군집의 갯수를 정해주는 DBSCAN방식과 중심단어를 기준으로 단어 벡터간의 거리를 기반으로 군집을 형성하는데 군집의 갯수를 지정해줘야하는 KMEANS방식을 사용했습니다. kmeans는 초기에 지정한 군집 갯수에 따라 중심 데이터를 지정합니다. 그리고 중심 데이터와 가까운 데이터들을 군집으로 묶습니다. 다시 형성된 각 군집에서 중심이 되는 데이터를 지정한 뒤 중..
-
youtube text mining 2ML, DL & Python/Youtube 크롤링 & 분석 2019. 5. 8. 17:12
text mining은 말 그대로 텍스트를 이용하여 데이터를 분석하는 것인데요, 연속형 자료 즉, 수치형 자료는 정형화된 자료로써 바로 분석에 사용되어도 무방한 데이터입니다. 하지만 텍스트 데이터는 비정형 자료로써 분석 하기에 앞서 수치형으로 바꿔주는 작업이 필요한데 이러한 작업을 w2v라고 합니다. word2vec를 설명드리기 전에 초기의 단어들은 어떻게 분류 되었는지부터 설명드리겠습니다. 지금은 벡터 공간에 할당된 단어간의 유사도나 관련성을 기준으로 단어들을 분류하고 군집하는데요. 예전에는 "나이브 베이지안"을 통해서 특정 단어가 들어가면 "1", 특정 단어가 들어가지 않으면 "0"으로 두고 분류하는 작업을 시행했습니다. 하지만 이는 단어마다 어떠한 의미를 가지는지를 컴퓨터가 모르고, 단어의 의미는 ..
-
youtube text mining 1ML, DL & Python/Youtube 크롤링 & 분석 2019. 5. 6. 19:02
안녕하세요. 저번 유튜브 댓글 크롤링에 이은 댓글을 이용한 text mining을 해보도록 하겠습니다. 먼저 저번에 긁어왔던 댓글 데이터를 불러와보도록 하겠습니다. 현재 보시는 것 처럼 댓글 데이터는 불필요한 이모티콘, ㅋㅋ, ㅎㅎ 같은 문자들이 존재 합니다. 텍스트 마이닝에서 중요한 것은 이러한 불필요한 단어들을 없애주는 전처리가 굉장히 중요합니다. 따라서 이러한 이모티콘들을 없앤 뒤 분석을 하겠습니다. 먼저 re 모듈을 import 받아서 불용어구들을 compile해주겠습니다. #이모티콘 제거 emoji_pattern = re.compile("[" u"\U0001F600-\U0001F64F" # emoticons u"\U0001F300-\U0001F5FF" # symbols & pictographs ..
-
유튜브 댓글 크롤링ML, DL & Python/Youtube 크롤링 & 분석 2019. 5. 5. 16:26
안녕하세요 저번 유튜버의 영상 정보 크롤링에 이어서 이번엔 한개의 영상을 정해서 댓글을 크롤링 해보도록 하겠습니다. 영상의 댓글을 크롤링하기 위해서 저번 포스팅에서 수집한 영상url을 사용해보겠습니다. 저번 포스팅에서는 설명하지 않았지만 영상별로 url을 수집했는데요 이번 포스팅의 시작은 이것으로 시작하겠습니다. 1. 영상들을 스크롤 했던 것은 기억하시죠? 스크롤한 뒤에 page source로 변환하여 url을 수집했습니다. html0 = browser.page_source html = BeautifulSoup(html0,'html.parser') video_list0 = html.find('div',{'id':'items'}) video_list2 = video_list0.find_all('ytd-gr..
-
유튜브 크롤링ML, DL & Python/Youtube 크롤링 & 분석 2019. 5. 4. 16:56
안녕하세요. 업무를 하다가 문득 떠오른 아이디어가 있어서 유튜브 크롤링을 하게 되었습니다. 유튜버들은 유튜브만의 분석 솔루션이 따로 있다고 알고 있는데 "과연, 그것이 얼마나 도움을 줄 수 있을까?" 라는 생각과 "직접 데이터를 수집하여 분석하고 인사이트를 도출해줄 수 있지 않을까?"라는 생각을 하게 되었습니다. 따라서 주제는 유튜버들중 한분을 정해서 데이터 수집부터 분석까지 진행해보고자 합니다. 또한, 본 포스팅에서는 유튜버에 대한 크롤링을 해보고자 합니다. 저는 "이사배"라는 유튜버분을 크롤링했습니다. 저는 Selenium으로 크롤링을 진행했습니다. 크롤링을 하는 여러 방법중에 가장 직관적이지만 시간이 오래걸리고 복잡하고 오류가 많다는 단점이있죠. 1. 먼저 크롤링에 필요한 모듈을 import합니다 ..