我把我用R写的第一个爬虫就献给了国家

浏览: 2335

作为我国社会主义事业的建设者和接班人,不仅要继承前辈开创的伟大事业,更要推进中国特色社会主义的航船继续破浪前进。

这不,为了响应习大大开展的“两学一做”学习教育,我不仅认真学习共产党党章党规,学习贯彻习近平总书记系列重要讲话精神,争做一名合格党员。今天我就要用自己的技术来学习今年的《政府工作报告》。

今天我们要用爬虫来爬取这篇文章,然后进行文本分词,再到文本可视化。我们需要使用下面这三个包:

(1)rvest 爬取文章内容

(2)jiebaR 用于分词,统计词频

(3)wordcloud2 用于对文本进行可视化

1.使用rvest包爬取文章。

首先,我需要对网页标签进行查看分析,下面这张图就是我用谷歌浏览器对网页标签进行分析的过程。

0.gif

 不知道大家有没有注意到下面这个表签。我们需要爬取的文字就在这个标签里面。

image.png

现在我们就开始写爬取代码:

library(rvest)
url<-'http://www.gov.cn/premier/2017-03/16/content_5177940.htm'

web<-read_html(url,encoding="utf-8") #读取数据,规定编码
position<-web %>% html_nodes("div.pages_content") %>% html_text()

%>%  为管道函数,将左边的值赋给右边函数作为第一个参数的值。

web  就是存储网页信息的变量。

html_nodes() 函数获取网页里的相应节点。

html_text() 函数获取标签内的文本信息。

2.使用jiebaR进行分词,统计词频

library(jiebaR)
engine_s<-worker(stop_word = "stopwords.txt")#初始化分词引擎并加载停用词。

seg<-segment(position,engine_s)#分词
f<-freq(seg) #统计词频
f<-f[order(f[2],decreasing=TRUE),] #根据词频降序排列

image.png

3.使用wordcloud2包进行可视化。

使用jiebaR包统计完词频之后,就很容易使用wordcloud2包进行可视化。

library(wordcloud2)#加载包
f2<-f2[1:150,]     #总共有2000多个词,为了显示效果,我只提取前150个字
wordcloud2(f2, size = 0.8 ,shape='star') #形状设置为一颗五角星

image.png

作为一名爱国爱党人事,我们都知道我们的国旗是五星红旗,所以就用这颗星来代表我的爱国之心吧。那也许就有人要说,你也体现以下你的爱党之心吧。行,没问题,接下来我就来体现一下我的爱党之心。我要把这个五角星形状改成一张党徽形状。

只怪自己PS技术太差,所以在网上找了下面这张图,找这张图的目的是要将绘制词云图形设置为一个党徽。

image.png

path<-"D://dang.png"#图片路径
wordcloud2(f2,size = 1.3,figPath =path)#绘图,如果词云形状和图片形状不太像时,可以调节size值

image.png

怎么样,是不是和党徽形状基本一样。不过细心的小伙伴估计会发现“发展”这个词没了,它可是词频最高的一个词啊。我个人认为原因是我们这个党徽图片中各个边太细,“发展”这个词的词频有太高于其他词频才导致这张词云里面没有“发展”这个词。“发展”的词频是125,差不多是“改革”的词频是68的两倍.为了验证这个想法,我决定选一个边更细的形状。

letterCloud(f2, word="党",size = 1)  #Word参数用于设置绘制词云形状为“党”这个字。

image.png

刚才还有的“改革”,“推进”,“经济”等词现在也没有了。所以证明我的说法基本没错。于是我就P了下面这一张图。把词绘制在图片黑色的地方,白色党徽的地方留下

image.png

path3<-"D://3.png"
f3<-f[1:1000,] #因为图片面积比较大,所以这次选前1000个词
wordcloud2(f3,size = 1.7,figPath =path3,background='black') #background用于设置背景颜色,为了便于观察我设置为黑色

image.png

这下好了,刚才丢失的词现在已经回来了,就是不知道中间那块黑色党徽那块你注意到没有。所以在这个给各位小伙伴提个醒,在用这个包绘制词云时,背景图片不要选择那些整体边太细的图,否则会影响结果。

4.总结

现在,我来总结一下,大家都知道我们党执政兴国的第一要务是——发展。与我们的分析结果是一致的。在过去的一年,我们党仍然以发展作为第一要务,全面推进“一路一带”建设,加快创新发展,大力发展深化改革开放,明确政府职能,不断完善社会体制,不断提高服务能力,注重保障和改善民生,增加就业机会,实现经济的稳定增长。推动各族人民在全面建成小康社会进程中实现共同发展繁荣。

不知道我总结的怎么样,不足的话留言区就留给你们了。

image.png

推荐 0
本文由 王亨 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册