這篇文章咱們將使用爬蟲來進行簡單靜態頁面爬取,而後進行文本分詞,再進行可視化分析。主要用到如下三個包:html
若是沒有安裝以上幾個包,使用命令:install.packages("...")來安裝。node
1.首先咱們進行網頁爬取web
我使用的是360瀏覽器,打開鏈接: http://www.gov.cn/premier/2017-06/04/content_5199817.htm,右鍵選擇審查元素,找到內容標籤:瀏覽器
咱們寫爬蟲代碼:函數
> library(rvest) 載入須要的程輯包:xml2 > library(xml2) > url <- 'http://www.gov.cn/premier/2017-06/04/content_5199817.htm' > web <- read_html(url,encoding="utf-8") > position <- web %>% html_nodes("div.pages_content") %>% html_text() ##%>%爲管道函數,將左邊的值賦給右邊函數做爲第一個參數的值。html_nodes()函數獲取某網頁內節點信息,html()函數獲取標籤內文本信息
2.分詞,統計詞頻編碼
咱們加載jiebaR包,再進行分詞:url
> library(jiebaR) > engine_s <- worker(stop_word="stopwords.txt") ##用notepad新建一個stopwords.txt文檔存在R文檔目錄下,編碼格式爲utf-8(能夠用getwd()函數查找當前目錄)。初始化分詞引擎並加載停用詞。 > seg <- segment(position,engine_s) ##分詞 > f <- freq(seg)##統計詞頻 > head(f)##列出前六個
3.可視化展現xml
咱們須要使用到wordcloud2包:htm
> library(wordcloud2) > f2 <- f2[1:100,] ##若是詞比較多的狀況下,咱們只選取最頻繁的前100個進行分析 > wordcloud2(f2,size=0.8,shape='star') ##用五角星繪製
4.自定義個性化展現blog
咱們想建立本身想要的形狀,在百度搜索圖片:
咱們利用上圖做爲底圖繪製:
> path <- "c:/Users/zhilei/Documents/test4.jpg" > wordcloud2(f2,size=0.5,figPath=path)
是否是很酸爽啊!那就動手試試吧小夥伴!