• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

R语言爬虫之rvest包初试(一)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

版权声明:本文为博主原创文章,未经博主允许不得转载。


       R语言中的rvest包是一个很容易入门的包,简单的学习即可入门,在此篇文章中,我将简单介绍一下本篇文章中rvest包中用到的主要的函数、爬取网页的基本步骤、一个完整的网页爬取步骤以及与rvest包结合使用的一款工具。

        1.与R语言中的rvest包结合使用的工具:SelectorGadget。

        SelectorGadget是一款开源工具,可以与谷歌浏览器结合使用,能够为复杂网站的元素生成CSS选择器,这款神器有助于我们快速找到html的节点信息(关于此工具的安装及使用可以参看我的另一篇博文,此处不再赘述)。

         2.rvest包用到的主要函数

          在此次爬取中,我们用到的函数主要有以下几个:

函数 功能 注意事项
read_html(url,encoding=" ") 用于保存网页 注意每个网页的编码可能有所不同,编码方式可以查看网页源码中的charset
html_nodes() 获得网页上指定节点信息或元素 html_nodes()括号内的节点可以使用SelectorGadget工具得到
html_text() 用于提取网页的文本信息  
html_attrs() 用于提取网页上的链接 提取链接的方式比文本略复杂
                  

         3.爬取网页的基本步骤:①获取网页的链接,代码为url=" " ; ②下载网页,代码:web<-read_html(url,encoding=" ");③提取自己想要的信息,如果是提取文本,一般代码为:name<-web%>%html_nodes(' ')%>%html_text();④提取链接:link<-web%>%html_nodes(' ')%>%html_attrs()。

       4.以爬取当当网图书排名为例(在最后附录完整的代码)。

          在这个案例中,我爬取了当当图书排行榜前500名的图书的排名、书名、作者、价格。因为代码类似,故在此我仅详细介绍如何爬取书的作者。

         主要是获取节点信息。在谷歌浏览器中打开链接:http://bang.dangdang.com/books/bestsellers/01.00.00.00.00.00-recent7-0-0-1-1,进入到当当图书排行榜,然后点击谷歌工具SelectorGadget(如果安装以后就会在谷歌浏览器左上角出现一个放大镜的图标:,点击该图标即可)。然后我们爬取作者,就点击“作者”那一栏,则会出现如图一所示:但是我们发现这时候选取的不仅仅有作者,还有下面的出版社信息,则这时候我们需要再点击“出版社”那一栏,这样就不会再选中“出版社”那一栏,只会选择“作者”那一栏,这时候我们谷歌浏览器左下角就可以得到“作者”的节点信息。如图2所示


图一   



图二

        其余的节点信息都是这样得到的,下面附上全部代码:

   

  

这样就可以啦~不过本篇文章中没有涉及到链接的提取,提取链接以及爬取网页中注意的小问题我下一篇文章再来更~~






         

        


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
R语言加快运算的几种方法发布时间:2022-07-18
下一篇:
《R语言实战》第八章之回归分析图形发布时间:2022-07-18
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap