본문 바로가기

R 크롤링

[R크롤링] 2. R을 이용한 네이버(Naver) 영화 네티즌 리뷰 크롤링

반응형

(2019.07.23) 코드기 비정상적으로 작동하여 수정했습니다. 해당 html 구조에 대해서는 본 페이지가 좀 더 상세하니 참고하시기 바랍니다.

새로운 주소: 네이버 영화 크롤링 in R


## 작성일: 2017.12.09

## 작성자: 춤추는초코칩

## 참고문허: R과Java로 크롤링하자

## Part03 R을 활용하여 크롤링하기

## Chapter07 네이버(Naver) 영화 네티즌 리뷰


# 작업폴더 경로 확인

getwd()

# 저장할 폴더 지정

setwd("D:/R/R과Java로 크롤링하자")

getwd()


# 패키지 인스톨

# install.packages("rvest")

# install.packages("R6")

# 라이브러리 불러오기

library("rvest")

library("R6")


# NAVER 영화('메리와 마녀의 꽃') 리뷰 20쪽까지 크롤링

#주소를 복사하여 url_base에 저장

url_base <- 'http://movie.naver.com/movie/point/af/list.nhn?st=mcode&sword=159037&target=after&page='


all.reviews <- c()

for(page in 1:20){

  url <- paste(url_base,page,sep='',encoding="euc-kr")

  # read_html 함수를 사용하여 html 페이지를 htxt 변수에 저장

  htxt <- read_html(url)

  # html_nodes 함수를 사용하여 list_netizen class에 해당하는 부분을 table 변수에 저자

  table <- html_nodes(htxt,'.list_netizen')

  # html_nodes 함수를 사용하여 title class에 해당하는 부분을 content 변수에 저자

  content <- html_nodes(table, '.title')

  # html_text 함수를 사용하여 text 부분을 reviews 변수에 저장

  reviews <- html_text(content)

  if(length(reviews)==0){break}

  all.reviews <- c(all.reviews, reviews)

  print(page)

}

# html의 구조는 아래와 같다.


# write.table 함수를 사용하여 크롤링한 자료를 txt파일로 저장

write.table(all.reviews, 'naver.txt')

반응형