[디블로터] ⑨네이버가 좋아하는 뉴스, 분석해보니

가 +
가 -

한 주를 건너뛰고 돌아온 디블로터입니다. 저번 주에 놀진 않았고요. ‘SDF 넥스트 미디어 챌린지’ 행사 참가로 2주간 자리를 비운 황유덕 씨가 오랜만에 돌아와서 그간 배웠던 내용들 복습했습니다. 단순선형회귀 모델 세워보는 연습도 해 봤습니다.

이번 주 디블로터는 ‘네이버 뉴스 스크래퍼’ 제작입니다. 우선 결과물 먼저 보겠습니다.

naver_mainnews

위 그래프는 11월 한 달간 네이버 주요 뉴스로 배열된 기사의 노출 시간 총합을 그래프로 나타낸 것입니다. 단위는 ‘초’입니다. 수치가 높을수록 네이버에서 주요뉴스로 노출이 많이 됐다는 뜻입니다. 위 그래프를 읽으면서 참고해야 할 사항은 다음과 같습니다

  • 위 그래프는 평균노출 시간이 아니라 노출 시간의 총합입니다. 기사 생산량을 고려하진 않았습니다.
  • 방송사의 경우는 저녁에 주요뉴스가 나오고, 다음 날 아침에 내려가는 경우가 많으므로 노출 시간이 상대적으로는 많게 측정된다고 합니다
  • 어떤 이유에서인지 아직도 노출 중이라고 표기되는 기사는 제외했습니다.

익히 알려진 것처럼 <연합뉴스>의 강세가 도드라집니다. 대충 나눠봐도 232일이 나옵니다. 나머지 언론사는 <연합뉴스>의 절반도 안 됩니다. 머니투데이 계열사도 주목할 만합니다. <뉴스1>, <뉴시스>, <머니투데이>를 모두 합치면 단숨에 2위로 오르는 것은 물론, <연합뉴스>에 못지않은 수준까지 올라갑니다. 방송사는 전반적으로 높은 가운데 <SBS>가 가장 많은 노출 시간을 기록했습니다. 종합편성 채널은 <JTBC>가 가장 높은 순위를 보입니다. 일간지는 <세계일보>, <서울신문>, <경향신문>, <한겨레>, <조선일보> 순이지만 큰 차이는 없습니다. 11월 한 달간 주요뉴스로 노출된 언론사는 총 62개입니다.

제작과정naverNews_nov1

네이버 뉴스는 기사배열 이력을 공개하고 있습니다. 뉴스 홈 첫 화면에 나오는 ‘이 시각 주요뉴스’를 기록해 둔 곳입니다.

naverNews_nov2

클릭하면 이렇게 나옵니다. 이 부분을 긁어올 생각입니다.

naverNews_nov3

주소를 확인합니다. 날짜만 바꾸면 해당 날짜의 배열 이력을 가져올 수 있을 것 같았습니다.

naverNews_nov4

문제는 이렇게 버튼을 눌러서 새로운 데이터가 나왔는데도 주소가 바뀌지 않는다는 점입니다. 이렇게 되면 단순히 날짜만 바꾸는 것으로는 해당 날짜의 모든 배열 이력을 가져올 수 없습니다.

naverNews_nov5

어쨌든 데이터를 받아오는 것은 맞기 때문에 어떻게 받아오는지 확인해야 합니다. 개발자도구를 열어봅니다.(F12)

naverNews_nov6

네트워크 탭을 클릭하고 프리저브 로그에 체크를 해 둡니다. 이렇게 하면 로그가 쌓입니다.

naverNews_nov7

어떤 페이지가 새로 들어왔습니다. 링크를 확인해봅시다.

naverNews_nov9

데이터를 가지고 있는 페이지가 이런 주소를 가지고 있는 걸 확인할 수 있습니다.

naverNews_nov10

리스트도 마찬가지입니다.  ‘text.nhn?’ 주소 뒤에 날짜, 페이지가 이어져 있습니다.

naverNews_nov11

링크를 알아냈으니 자료를 긁어옵니다. ‘rvest’ 패키지를 활용해서 받아왔습니다. rvest 패키지는 원도우에서는 제대로 활용하기 어렵습니다. 링크의 날짜와 숫자만 바꾸면 새로운 데이터를 가져올 수 있습니다. ‘for’ 문을 활용했습니다. 데이터는 제목, 언론사, 노출기간의 정보가 담겨있습니다.

정제해서 노출된 시간과 언론사만 정리한 자료를 가지고 왔습니다. ‘dplyr’ 패키지를 이용해서 언론사별로 묶고, 정렬했습니다. 표는 다음과 같습니다. 무척 깁니다.

naver_news_time_all

상위 20개만 추려서 D3.js로 그래프를 그렸습니다. 그림 파일로 만들고 PPT로 추가적인 이미지를 덧붙였습니다.

naverNews_nov12 naver_mainnews

네티즌의견(총 8개)