Google Sheets : IMPORTXML로 뉴스 데이터 스크랩하기
안녕하세요 강쌤입니다.
이번에는 뉴스데이터를 Google Sheets로
가져오는 것을 실습하겠습니다.
1. 크롬 브라우저를 오픈합니다.
2. 3. 먼저 크롬 웹스토어를 오픈한 다음에 'Scraper' Extension을 설치합니다.
https://chrome.google.com/webstore/detail/scraper/mbigbapnjcgaffohmbkdlecaccepngjd
3. jtbc 뉴스룸의 일간 데이터를 가져오겠습니다.
아래 페이지로 이동하면,
맨 뒤에 'SearchDate=날짜' 부분이 계속 변경이 됩니다.
20200526은 2020년 5월 26일 뉴스룸 기사라는 뜻
http://news.jtbc.joins.com/Replay/news_replay.aspx?fcode=PR10000403&strSearchDate=20200526
뉴스 꼭지마다 기사 제목, 뉴스 링크, 기자를 스크랩하겠습니다.
4. '오늘의 주요뉴스'라는 기사 제목에서 우클릭 후 위에서 설치한 Extension인
'Scrape similar'를 선택합니다.
그러면 XPath 기준으로 값은 '//dt/a'를 복사합니다.
5. Google Sheets에서 불러오겠습니다.
A2셀에 아래와 같이 입력합니다.
=IMPORTXML("http://news.jtbc.joins.com/Replay/news_replay.aspx?fcode=PR10000403&strSearchDate=20200526","//dt/a")
IMPORTXML 함수는 URL에서 불러오고자 하는 특정 XPath를 입력하면 해당 값들을 불러올 수 있습니다.
6. B2셀에는 해당 기사 링크를 가져오겠습니다.
이번에는 //dt/a 구조에 @href를 추가합니다.
=IMPORTXML("http://news.jtbc.joins.com/Replay/news_replay.aspx?fcode=PR10000403&strSearchDate=20200526","//dt/a/@href")
7. 이번에는 해당 기사 리포팅을한 기자를 불러오겠습니다.
기자 리스트에서 우클릭 후 다시 'scrape similar'를 실행하면 나타나는
XPath인 '//li/div/dl/dd'을 활용하겠습니다.
=IMPORTXML("http://news.jtbc.joins.com/Replay/news_replay.aspx?fcode=PR10000403&strSearchDate=20200526","//li/div/dl/dd")
그러면 아래와 같이 리스트를 불러올 수 있습니다.
뉴스 기사를 모아 아래와 같이 테이블 형태로
일간 단위로 관리할 수 있습니다.
화면은 Tableau Desktop에서 구현했고
기사 제목 클릭 시 해당 뉴스 페이지로
이동하도록 설정하면 됩니다.
이상 강쌤이었습니다.
'Google Sheets' 카테고리의 다른 글
Google Sheets : IMPORTHTML로 테이블 데이터 가져오기 - Melon 차트 (0) | 2020.05.26 |
---|---|
Google Sheets : IMPORTFEED로 Apple Music 인기곡 스크랩 하기 (0) | 2020.05.25 |
댓글