R语言抓取网站数据
本篇文章为大家展示了R语言抓取网站数据,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
创新互联公司是一家集网站建设,黎川企业网站建设,黎川品牌网站建设,网站定制,黎川网站建设报价,网络营销,网络优化,黎川网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
今天看到有人用Python爬取了链家网成都站的楼盘信息,我尝试用R做了同样的事情,具体代码如下:
library(rvest)
url0 <- 'http://cd.fang.lianjia.com/loupan/'
name=area=price=type=address=status=NULL
for(i in 1:10)
{
url <- paste(url0,"pg",i,sep = '')
web <- read_html(url)
name <- c(name,web %>% html_nodes('div.info-panel') %>%
html_nodes('a') %>% html_text())
address <- c(address,web %>% html_nodes('div.info-panel') %>%
html_nodes('div.where') %>% html_nodes('span.region') %>%
html_text())
b=web %>% html_nodes('div.info-panel') %>% html_nodes('div.area')
are=rep(0,length(b))
for (i in 1:length(b))
{
if (str_length(b[i]) > 60){
are[i] = b[i]%>% html_nodes('span') %>% html_text()
}else{
are[i] = 0
}
}
area=c(area,ifelse(are=='0','0',unlist(str_extract(are,'[0-9]+~[0-9]+|[0-9]+'))))
a <- web %>% html_nodes('div.info-panel') %>% html_nodes('div.average')
price=rep(0,length(a))
for (i in 1:length(a))
{
if (str_length(a[i]) > 100){
price[i] = a[i]%>% html_nodes('span.num') %>% html_text()
}else{
price[i] = 0
}
}
price=c(price,price)
type <-c(type, web %>% html_nodes('div.info-panel') %>%
html_nodes('div.type') %>% html_nodes('span.live') %>% html_text())
status <-c(status, web %>% html_nodes('div.info-panel') %>%
html_nodes('div.type') %>% html_nodes('span.onsold') %>% html_text())
}
data=data.frame(name,address,area,price=as.numeric(price),type,status)
DT::datatable(data)
部分结果如下
然后又爬取了北京、上海、深圳、广州等17个城市的新建楼盘,然后进行了分析
#雷达图
#绘制面积图
##条形图
##层次聚类
##楼盘在哪里(有些坐标可能有误,但总体趋势还行)
上述内容就是R语言抓取网站数据,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。
本文题目:R语言抓取网站数据
网站路径:http://scyanting.com/article/pescse.html