티스토리 뷰

저작권 문제로 아무거나 크롤링을 할 수 없다는 말씀과 함께 주신 과제...

library(rvest)
library(stringr)
library(dplyr)
library(ggplot2)
library(wordcloud)
library(wordcloud2)

cnt=c()

base_url="https://www.bskorea.or.kr/bible/korbibReadpage.php?version=GAE&book=gen&chap="
for(i in 1:50){
  cr_url=paste0(base_url,i)
  t_css="#tdBible1 span"
  hdoc=read_html(cr_url,encoding = 'UTF-8')
  n_css=html_nodes(hdoc,t_css)
  cnt_part=html_text(n_css)
  cnt_part=gsub("\\d+","",cnt_part)
  cnt_part=str_trim(cnt_part,side="both")
  cnt=c(cnt,cnt_part)
}
install.packages("multilinguer")
library(multilinguer)
install_jdk()
install.packages(c('stringr', 'hash', 'tau', 'Sejong', 'RSQLite', 'devtools'), type = "binary")
install.packages("remotes")
remotes::install_github('haven-jeon/KoNLP', upgrade = "never", INSTALL_opts=c("--no-multiarch"))
library(KoNLP) #최종적으로 "KoNLP" 패키지를 불러옵니다
txt=sapply(cnt,extractNoun,USE.NAMES = F)
txt=unlist(txt)
count=Filter(function(x){nchar(x)>=2},txt)
word=table(count)
kk=head(sort(word,decreasing = T),20)
kk

 

<막대그래프로 만들기>

tt=barplot(kk,col=mycol0,
           las=2,
           ylim=c(0,300))
text(tt,kk,label=paste0(kk,"건"),pos=3,col='red',cex=1,font=6)

 

<색상 고르기>

display.brewer.all() #색상 팔레트 보기

 

<텍스트마이닝_wordcloud>

palate=brewer.pal(9,"RdPu") #개수, 색상 팔레트 이름
wordcloud(names(word), 
          freq = word, 
          min.freq = 2, 
          rot.per = 0.25, 
          scale = c(5, 0.5), 
          random.order = F, 
          random.color = T, 
          colors = palette)

 

<텍스트마이닝_wordcloud2>

wordcloud2(data = word,
           size=0.4,
           shape='star') #별모양

반응형
LIST
댓글
링크
공지사항
최근에 올라온 글