[R좀 R려줘!] R을 이용하여 네이버 실시간 검색어, 인스타그램 검색 결과 크롤링 하기!!

👈 Click! 투표!

안녕하세요 🙂

오늘은 R을 이용하여 네이버 실시간 검색어, 인스타그램 검색 결과를 크롤링 해보도록 하겠습니다!


#install.packages("RSelenium")
library("RSelenium")
library("wdman")

#node.js나 javascript가 많이 사용될 경우 R에서는 조금 힘들 수 있다. 
#해서 아래와 같이 직접 연결

RSelenium_connect = function(){
    tryCatch(expr = {
        port_no = as.integer(sample(2000:8000, 1))
        rs = chrome(port = port_no)
        remDr <<- remoteDriver(remoteServerAddr = "localhost",
                               port = port_no,
                               browserName = "chrome")
        remDr$open()
    }, finally = {
        port_no = as.integer(sample(2000:8000, 1))
        browser_ver = binman::list_versions(appname = "chromedriver")
        browser_ver = browser_ver[[1]][length(browser_ver[[1]]) - 2] # -1 if you need
        rs = chrome(port = port_no, version = browser_ver)
        remDr <<- remoteDriver(remoteServerAddr = "localhost",
                               port = port_no,
                               browserName = "chrome")
        remDr$open()
    })
}

RSelenium_connect()

와 같이 RSelenum_connect() 사용자 함수를 돌려보면!



위와 같은 chrome 브라우저가 실행됩니다.


remDr$navigate("https://www.naver.com/")
remDr$sendKeysToActiveElement(sendKeys = list("코로나"))

를 실행해주시면 아까 실행 된 chrome 브라우저에서 네이버로 이동 된 것을 확인하실 수 있을거에요!

또한! 네이버 검색 창에 “코로나” 라는 글자가 입력됨을 확인하실 수 있어요. ㅎㅎ



그러면 이제 실시간 검색어를 한번 크롤링 해볼까요?!


source = remDr$getPageSource() #Page Source code를 가져올 수 있다.
library("rvest")
text = read_html(source[[1]]) #HTML 코드별 가독성 
text

text %>% 
    html_nodes(xpath = '//*[@class="ah_k"]') %>%
    html_text() %>%
    unique()



그러면 이렇게 실시간 검색어를 순위별로 긁어오는 모습을 확인할 수 있습니다. ㅎㅎ

네이버 다음으로, 이번에는 인스타그램을 한번 크롤링 해볼까요?

인스타그램 검색어를 크롤링 하기 위해서는 이전 챕터에서 배웠던, html class 명을 가져올 필요가 있습니다!

2020/02/27 – [개발] – [R좀 R려줘!] R 을 이용한 네이버 뉴스 크롤링 하기!

[R좀 R려줘!] R 을 이용한 네이버 뉴스 크롤링 하기!

R을 이용해 사용자 정의 함수 naver_news와 make_url 두개의 함수를 통해 네이버 뉴스를 크롤링 해보도록 하겠습니다! naver_news의 경우 크롤링 하는데 들어갈 목록을 정의한 함수입니다. 저의 경우 신문사, 발행..

signedinfo.com

한번 확인해주시고!

혹시나하여 다시 작성해드리면~!



원하는 공간을 인스타그램 홈페이지에 들어가서 검색하신 이후!

class 명을 확인 해주시면 됩니다!


remDr$navigate("https://www.instagram.com/explore/tags/%EC%84%A0%EB%A6%89%EB%A7%9B%EC%A7%91/?hl=ko")
source = remDr$getPageSource()
text = read_html(source[[1]], encoding = "UTF-8")
text

text %>%
    html_nodes(xpath = '//*[@class="fuqBx"]') %>%
    html_children() %>%
    html_text()

그러면 아래와 같이 결과를 확인할 수 있습니다! ㅎㅎ



보기보다 어렵진 않으니까 한번 따라해보세요! ㅎㅎ

그럼 질문 있으시면 댓글로 남겨주세요~!

2020.02.27 – [개발] – [R좀 R려줘!] R 을 이용한 네이버 뉴스 크롤링 하기!

[R좀 R려줘!] R 을 이용한 네이버 뉴스 크롤링 하기!

R을 이용해 사용자 정의 함수 naver_news와 make_url 두개의 함수를 통해 네이버 뉴스를 크롤링 해보도록 하겠습니다! naver_news의 경우 크롤링 하는데 들어갈 목록을 정의한 함수입니다. 저의 경우 신

signedinfo.com

2020.02.27 – [개발] – [R좀 R려줘!] R gsub() 함수를 이용한 패턴 치환하기!

[R좀 R려줘!] R gsub() 함수를 이용한 패턴 치환하기!

R gsub() 함수를 이용하여 패턴 치환하는 방법에 대해 알아보겠습니다. 예제(text1)에 있는 값을 gsub()함수를 이용해 ‘@’로 치환하는 작업입니다. 참고) # 활용 함수 # ▶ gsub(): 패턴 치환 아래 내용을

signedinfo.com

2020.02.27 – [일상] – 멀티캠퍼스 R좀 R려줘! R 데이터 분석 with Cloud 후기!!

멀티캠퍼스 R좀 R려줘! R 데이터 분석 with Cloud 후기!!

안녕하세요 :-)! 오늘은 멀티캠퍼스에서 진행하는 R좀 R려줘! R 데이터 분석 with Cloud 강의 들은 후기에 대해 포스팅 해볼까 합니다! 그럼 시작해볼까요? ㅎㅎ 우선. 저는 사실 멀티캠퍼스를 잘 모

signedinfo.com

2020.02.28 – [개발] – [R좀 R려줘!] R rbind(), colnames()를 활용한 하나의 data.frame() 만들기!

[R좀 R려줘!] R rbind(), colnames()를 활용한 하나의 data.frame() 만들기!

안녕하세요 🙂 오늘은 R함수인 rbind(), colnames()를 활용하여 하나의 data frame을 만들어보려고 합니다! 실습 파일 다운로드 링크 문제는 아래와 같습니다.  Q. “2014_2017.xlsx” 에는 4개의 sheet가 있다…

signedinfo.com

2020.02.28 – [개발] – [R좀 R려줘!] R unique(), nrow()를 활용한 언론사 별 트렌드 파악하기!

[R좀 R려줘!] R unique(), nrow()를 활용한 언론사 별 트렌드 파악하기!

안녕하세요 🙂 오늘은 R함수인 unique(), nrow()를 활용하여 언론사 별 트렌드를 파악해보려고 합니다! 실습 파일 다운로드 링크 문제는 아래와 같습니다. # Q1. 몇 군데 언론사의 뉴스 기사가 수

signedinfo.com

2020.02.28 – [개발] – [R좀 R려줘!] aggregate(), ggplot() 함수를 이용한 언론사별 뉴스기사 그래프 그리기!

[R좀 R려줘!] aggregate(), ggplot() 함수를 이용한 언론사별 뉴스기사 그래프 그리기!

안녕하세요 🙂 오늘은 aggregate(), ggplot()함수를 이용하여 언론사별 뉴스기사 그래프를 그려보려고 합니다! 이전 글을 먼저 확인해주세요! 1) 2020/02/28 – [개발] – [R좀 R려줘!] R rbind(), colnames()를 활..

signedinfo.com

2020.02.28 – [개발] – [R좀 R려줘!] R에서 자연어(NLP)처리를 해보자!

[R좀 R려줘!] R에서 자연어(NLP)처리를 해보자!

안녕하세요 :-)! 오늘은 R에서 자연어(NLP) 처리를 어떻게 하는지 알아보려고 합니다! R 자연어 처리의 경우 SK텔레콤에 재직 중이신 Jeon Heewon님의 깃헙을 참고해보려고 해요! R에 자연어 처리 패키

signedinfo.com

2020.02.28 – [개발] – [R좀 R려줘!] wordcloud2 패키지를 이용해 최다빈도 단어 추출하기!

[R좀 R려줘!] wordcloud2 패키지를 이용해 최다빈도 단어 추출하기!

안녕하세요 🙂 오늘은 wordcloud2 패키지를 이용하여 최다빈도 단어를 추출해보도록 하겠습니다! 추출할 단어를 위해 하나의 csv 파일을 사용할 것이라 다음 링크에서 다운받아서 활용해주세요! df

signedinfo.com

2020.02.28 – [개발] – [R좀 R려줘!] 데이터 분석할때 반복문 진행 현황 확인하기!

[R좀 R려줘!] 데이터 분석할때 반복문 진행 현황 확인하기!

안녕하세요 🙂 데이터 분석할때 반복문을 심심치 않게 사용하는데요! 이때 분석량이 많을 경우 어디까지 진행 됐는지 궁금할때 있잖아요? for(n in 1:65){ cat(paste0(“r==== Progress: “, n, “/65 ====”)) #Sys..

signedinfo.com

2020.02.28 – [개발] – [R좀 R려줘!] 하나의 엑셀(Excel)에 담긴 정보를 특정 기준으로 여러 엑셀 파일로 나누고 합치기!

[R좀 R려줘!] 하나의 엑셀(Excel)에 담긴 정보를 특정 기준으로 여러 엑셀 파일로 나누고 합치기!

안녕하세요 :-)!! 오늘은 하나의 엑셀에 담긴 정보를 여러 엑셀 파일로 쪼개는 방법에 대해 알아보겠습니다! 사용할 예제 파일은 링크를 통해 확인해주세요. ㅎㅎ elec = read.csv(“elec_load.csv”, stringsAs

signedinfo.com