본문 바로가기

교육

트위터 크롤링 │콜드체인 │twitteR│Cold chain issues in Korea

R의 twitteR 패키지를 활용한 트위터 크롤링 방법에 관하여 정리합니다. 검색할 트윗은 콜드체인입니다. twitteR을 이용하기 위해서는 사전에 트위터 API 개발자 등록과 승인을 받아야 한다는 점에서 Rtweet 패키지에 비해 다소 불편합니다. 이번 포스팅에서 사용한 테스트용 R 스크립트는 하단에 별도로 업로드해두겠습니다. 

2021.06.01 - [교육] - rtweet 사용법 │BTS meal │R 크롤링

 

rtweet 사용법 │BTS meal │R 크롤링

이번 포스팅은 rtweet 패키지를 이용한 트윗 R 크롤링 방법에 관하여 정리합니다. 사례는 "#BTS meal"를 이용합니다. rtweet은 본인의 트위터 계정만 있다면 별도의 승인 절차 없이 필요한 트윗을 수집

e-datanews.tistory.com

 

1. 트위터 API 접근 토큰 신청 

twitteR 패키지를 이용하여 트위터 크롤링을 하기 위해서는 사전에 트위터 API 개발자 등록과 승인을 받아야 합니다. https://apps.twitter.com에 접속한 후, 등록 신청 형식에 맞춰 개인정보, 특히 활용 목적을 상세히 적어야 빠른 시한 내 승인을 얻을 수 있습니다. 

트위터 API 개발자 등록 및 접근 토큰 입력
트위터 API 개발자 등록 및 접근 토큰 입력

개발자 승인을 얻을 후, 위 그림처럼 R 콘솔창에 사용자 키, 사용자 비번, 접근 토큰 그리고 토큰 비번을 각각 입력하면, 본격적인 twitteR 패키지를 이용한 트위터 크롤링이 가능해집니다. 

 

2. 콜드체인 트윗 검색

콜드체인 트윗을 100개까지만 수집해 보겠습니다. 텍스트 마이닝을 수행할 트윗 본문은 text 칼럼에 포함되어 있습니다. 
다만, RT 로 인해 중복된 트윗이 많이 있으므로 unique 함수를 이용하여 중복된 트윗은 제거해 줍니다. 결국 100개의 트윗을 수집하였으나, 분석대상에 포함된 트윗은 RT를 제거하면, 100개 미만이 됩니다.

콜드체인 트윗 중 unique 함수를 이용한 RT 제거
콜드체인 트윗 중 unique 함수를 이용한 RT 제거 

 

3. 한글 텍스트 정제 작업

본격적인 한글 텍스트 마이닝 절차에 들어갑니다. 필요한 R 패키지를 설치하고, 불필요한 영어, 숫자, 기호 등을 삭제하고, 두 글자 이상의 명사만을 1차로 추출합니다. 추출된 명사들을 빈도수 기준으로 정렬한 후, 추가적인 불용어 처리를 수회 반복합니다.

한글 텍스트 데이터 정제 작업
한글 텍스트 정제 작업 

 

4. 텍스트 데이터 시각화 

데이터 정제 작업 완료 후, 3회 이상 빈도 단어들을 중심으로 워드 클라우드를 구현할 것이 다음 그림입니다. 최근 백신 물류와 맞물려 안전, 수송, 예방접종, 의료기관, 온도, 변종 등의 단어들이 상대적으로 많이 등장했음을 알 수 있습니다. 

콜드체인 트윗 워드클라우드
콜드체인 트윗 워드클라우드 

 

콜드체인 트윗 R 크롤링과 텍스트 마이닝 실행 방법

 

5. 정리 

이번 포스팅에서는 최근 이슈 중의 하나인 콜드체인을 이용한 트위터 크롤링과 한글 텍스트 마이닝 절차를 함께 살펴보았습니다. 포스팅에서 사용한 R 스크립트는 아래와 같이 업로드해두겠습니다. 

twitteR_test.R
0.00MB