정보성 Post 또는 광고성 Post 홍보하는 창작물 주제 선정을 위한 자료 수집 실습

랭킹 검색어 (Keyword query)

  • 판다랭크 (스포츠, 엔터 분야가 도배함)
  • 블랙키위 (스포츠, 엔터 분야가 도배함)
  • 시그널 실시간 검색어 : 원천자료가 어디인지 파악 못했음
  • Zum

랭킹 뉴스 기사 (News contents)

2가지 데이터 수집 방향의 장단점

방향 1 방향 2
수집하는 데이터 특정 검색어에 대한 뉴스 기사 최근 뉴스, 많이 본 뉴스, 언론사별 뉴스 등 활용성 높은 기준으로 정렬된 뉴스 기사
필요도구 네이버 API 이용하면 바로 JSON 파일로 저장 가능 Browser DevTools, Data Parsing library (beautifulsoup), Web Crawling framework (scrapy), or Headless browser framework (playwrite, puppeteer, Selenium)
장점 완전 합법. 왕초보도 구현 가능 기사의 본문 (body) 수집 가능.
단점 sim (정확도순), data (날짜순)으로 밖에 sorting이 안됨. 기사의 본문 (body) 없이 meta_data인 description (본문 요약본)과 언론사 link 만 수집 가능. 뉴스 저작권 위반 및 네이버 정책 위반 가능성 있음. 과거 뉴스 수집이 어려움. DevTools를 이용해 네이버 뉴스 페이지가 사용한 DOM 구조와 query를 파악한 후에야, Beautifulsoup 등의 python library를 사용해 자동화 가능.

실습: 네이버뉴스 세부 URL& Selector for Fetch and Parsing

Name URL Selector
정치 헤드라인 https://news.naver.com/section/100 #_SECTION_HEADLINE_LIST_lqtpm
세계 헤드라인 https://news.naver.com/section/104 #_SECTION_HEADLINE_LIST_k89wu
글로벌 경제 https://news.naver.com/breakingnews/section/101/262 #newsct > div.section_latest
교육 https://news.naver.com/breakingnews/section/102/250 #newsct > div.section_latest
경제 헤드라인 https://news.naver.com/section/101 #_SECTION_HEADLINE_LIST_ojmgv
경제 일반 https://news.naver.com/breakingnews/section/101/263 #newsct > div.section_latest
금융 https://news.naver.com/breakingnews/section/101/259 #newsct > div.section_latest
증권 https://news.naver.com/breakingnews/section/101/258 #newsct > div.section_latest
산업/재계 https://news.naver.com/breakingnews/section/101/261 #newsct > div.section_latest
부동산 https://news.naver.com/breakingnews/section/101/260 #newsct > div.section_latest
IT/과학 헤드라인 https://news.naver.com/section/105 #_SECTION_HEADLINE_LIST_vr5e9
IT 일반 https://news.naver.com/breakingnews/section/105/230 #newsct > div.section_latest
과학 일반 https://news.naver.com/breakingnews/section/105/228 #newsct > div.section_latest
중기/벤처 https://news.naver.com/breakingnews/section/101/771 #newsct > div.section_latest
생활경제 https://news.naver.com/breakingnews/section/101/310 #newsct > div.section_latest