R语言之 从网上抓取数据3

上文我们获取到了整个html文档,如何从中解析出我们需要的东西呢?
解析html
我们这里使用htmlParse()函数来解析网页,使用前要先导入RCurl,XML包。
library("RCurl";)
library("XML";)
然后用上文的方法获取到雪球首页的文档
xueqiu<-getURL("http://xueqiu.com";)
然后利用htmlParse()函数解析文档
parse<-htmlParse(xueqiu,asText = TRUE, encoding ='utf-8')#解析网页
这里要注意编码为utf-8
然后利用getNodeset()函数获取到相应的节点集合
nodeset<-getNodeSet(doc = parse, path = "//div[@class='title';]/h4")

这样我们就抓到了今日话题的标题,我们敲nodeset,显示如下:

155f6bf64278543fbbeeb9f9.png

其中,path 的意思是选取类名是title的div,然后在选取这些div下的h4标签。还记得我前文提到的用路径找到相应的节点吗,与php的xpath类似,R的XPath可以很简单的解析xml文件。其中的路径规则如下 :
斜杠(/)作为路径内部的分割符
/ 表示选择根节点
// 表示选择任意位置的某个节点
@表示选择某个属性
* 表示匹配任何元素节点
@
表示匹配任何属性值
node() 表示匹配任何类型的节点
*

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容