티스토리 뷰

#rvest packages 를 사용하여 크롤링하기



#rvest 패키지를 사용하기 위함

install.packages("rvest")

#library로 등록해야 사용가능

library(rvest) 



#원하는 인터넷 기사를 아무거나 가져오자

url<-"https://news.naver.com/main/read.nhn?mode=LS2D&mid=shm&sid1=105&sid2=229&oid=138&aid=0002064730"

url



#html 전체소스를 가져오기

nv <- read_html(url) 

nv




#제목만 뽑아내는 방법

#제목을 먼저 뽑아내야 보기 좋으니까 먼저 뽑자

nvns <- html_nodes(nv, "h3#articleTitle")

nvns 

title <- html_text(nvns)

title

#기사 제목을 텍스트 파일로 만듦

#항상 폴더 위치를 아는 상태에서 작업하자

write(title, "nv.txt") 



#기사 내용을 가져올려면 기사 페이지에서 페이지소스보기를 한다음

#본문의 내용을 불러오는 함수를 찾아야한다.

#가져올려는 기사의 본문 내용을 조금 복사해서 'Ctrl + F'로 찾으면 된다

#해당 기사의 본문 함수는 'articleBodyContents' 였음



#내용 가져오기

#앞에 id가 적혀있으면 '#'  앞에 class는 '.'을 붙인다

#id 인지 class 인지는 본문 함수 앞에 붙어있다

nvns <- html_nodes(nv, "#articleBodyContents") 

nvns

#글자를 가져오기

body0 <- html_text(nvns)


#파일 정리하기

#현재 상태에서 body0를 쳐보면 내용이 구질 구질하다

#간단하게라도 필요없는 단어를 없애자

body0 <- gsub("\t", "", body0) # \t 를 없앰

body0 <- gsub("\n", "", body0) # \n 을 없앰

body0 <- gsub("/", "", body0) # / 를 없앰

#본문을 제목을 쓴 파일에 이어쓰기

write(body0, "nv.txt", append = T)


이렇게 하면 텍스트파일로 제목과 본문내용을 쉽게 가져올 수 있다.



댓글