인공지능/R

R - 크롤링 연습 ①

해피밀세트 2020. 4. 27. 15:42
반응형

 

 

 

1. 인공지능 신문 - 의료 AI 기사 크롤링

# 기사 내용 크롤링

html <- read_html("http://www.aitimes.kr/news/articleList.html")

html

url <- html_nodes(html,".list-titles")%>%

  html_nodes('a')%>%

  html_attr('href')

url[1]

 

news <- c()

for(i in 1:length(url)){

  html <- read_html(paste0("http://www.aitimes.kr",url[i]))

  text <- html_node(html,'#article-view-content-div')%>%

    html_text()

  news <- c(news,text)

}

news

# 텍스트 정제작업 및 단어 빈도수 체크

t <- c()

for(i in 1:length(news)){

  x22 <- SimplePos22(news[i])

  x22

  str_match(x22, "[A-z가-힣]+/N")

  word_nn <- as.vector(na.omit(str_match(x22, "([A-z가-힣]+)/N")[,2]))

  t <- c(t,word_nn)

  word <- table(t)

}

# 워드클라우드로 띄워보기

wordcloud2(word)

 

 

 

2. 네이버 영화 평점 (유전)

x <- c()
for(i in 1:10){
  html <- read_html(iconv(paste0("https://movie.naver.com/movie/point/af/list.nhn?st=mcode&sword=172420&target=after&page=",i),
                          from = 'euc-kr',to='cp949'),encoding='cp949')
  t <- html_nodes(html,".title")%>%
    html_text()
  for(j in 1:length(t)){
    x22 <- SimplePos22(t[j])
    x22
    str_match(x22, "[A-z가-힣]+/N")
    word_nn <- as.vector(na.omit(str_match(x22, "([A-z가-힣]+)/N")[,2]))
    word_nn <- gsub('별점',' ',word_nn)
    word_nn <- gsub('점',' ',word_nn)
    word_nn <- gsub('신',' ',word_nn)
    word_nn <- gsub('것',' ',word_nn)
    word_nn <- gsub('공포영화',' ',word_nn)
    word_nn <- gsub('영화',' ',word_nn)
    x <- c(x,word_nn)
  }
}
word <- table(x)
wordcloud2(word,size = 10)
반응형

'인공지능 > R' 카테고리의 다른 글

R - RSelenium, xlsx 사용  (0) 2020.04.28
R - 크롤링 연습 ②  (0) 2020.04.27
R - 크롤링  (0) 2020.04.27
R - KoNLP 설치 및 사용  (0) 2020.04.25
R - stringr을 이용한 텍스트 정제 작업  (0) 2020.04.23