R语言 网站数据获取 (rvest)

您所在的位置:网站首页 抓取网页中的文字 R语言 网站数据获取 (rvest)

R语言 网站数据获取 (rvest)

#R语言 网站数据获取 (rvest)| 来源: 网络整理| 查看: 265

都说Python爬虫功能强大,其实遇到动态加载或者登陆网站Python还是很困难,对于大部分的一些普通爬虫,R语言还是很方便。这里介绍R语言rvest包爬虫,主要用到函数:read_html()、html_nodes()、html_text()和html_attrs()。

 

 

rvest: Easily Harvest (Scrape) Web Pages  (轻松获取网页)

CRAN - Package rvest (r-project.org)

tidyverse/rvest: Simple web scraping for R (github.com)

 

首先,安装 rvest

install.packages("rvest")

  

安装好后就可以使用了

library(rvest)

  

函数作用 read_html() 读取 html 页面 html_nodes() 提取所有符合条件的节点 html_node() 返回一个变量长度相等的list,相当于对html_nodes()取[[1]]操作 html_table() 获取 table 标签中的表格,默认参数trim=T,设置header=T可以包含表头,返回数据框 html_text() 提取标签包含的文本,令参数trim=T,可以去除首尾的空格 html_attrs(nodes) 提取指定节点所有属性及其对应的属性值,返回list html_attr(nodes,attr) 提取节点某个属性的属性值 html_children() 提取某个节点的孩子节点 html_session() 创建会话

 

举例参考:

1、上证综指成份股列表爬取

网站: 上海证券交易所_上证综合指数成分股列表 (sse.com.cn)    http://www.sse.com.cn/market/sseindex/indexlist/s/i000001/const_list.shtml

 

 

 

 

利用Chrome浏览器的功能先获取表格所在页面部分的xpath, 办法是鼠标右键单击表格开头部分, 选择“检查”(inspect), 这时会在浏览器右边打开一个html源代码窗口,

当前加亮显示部分是表格开头内容的源代码,将鼠标单击到上层的处, 右键单击选择“Copy-Copy XPath”, 得到如下的xpath地址:'//*[@id="content_ab"]/div[1]/table'。

然后, 用rvest的 html_nodes()函数提取页面中用xpath指定的成分, 用 html_table()函数将HTML表格转换为数据框, 结果是一个数据框列表, 因为仅有一个, 所以取列表第一项即可。 

 

library(rvest) ## 网页地址 urlb


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3