html抓取网页数据,R语言网页数据抓取的一个实例

1.从HTML表中读取数据

在网页上表格或者列表是常见的数据类型。例如,以维基百科世界各国人口为例“http://en.wikipedia.org/wiki/List_of_countries_by_population”。网页图表方便人的理解,但是机器理解不容易。我们可以通过复制粘贴方法将数据复制到电子表格,但是这种方法比较繁琐。我们可以通过使用函数read.csv()和read.table()。如果网页格式比较友好,我们可以使用XML包中的readHTMLTable()函数。“http://en.wikipedia.org/wiki/List_of_countries_by_population”网页中的数据就是采用readHTMLTable函数方法。

========================================================

#载入XML包

> library(XML)

#确定网页地址,通过网页地址分析网页表格

> u

"http://en.wikipedia.org/wiki/List_of_countries_by_population"

> tbls

=========================================================

由于该网页包含多个表格,所以需呀确定哪个表格是我们需要的人口分布表。通过识别表的行数我们确定需要的表格。

=========================================================

#sapply(X,FUN)

#统计tbls各表的行数

#观察,表1是我们需要的表

> sapply(tbls,nrow)

$`NULL`

[1] 247

$`NULL`

[1] 1

$`NULL`

NULL

$`NULL`

[1] 18

$`NULL`

[1] 16

#读取网页u的第一张表

> pop

2、储存数据至硬盘

#存储pop为CSV文档

#write.csv(X,file="")

> write.csv(pop,file="d:/pop.csv")

==========================================================

保存为简单文本:

>write.table(x, file = "*.txt")

保存为逗号分割文本:

>write.csv(x, file = "*.csv")

保存为R格式文件:

>save(x, file = "*.Rdata")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值