我目前处于爬虫入门水平,搜罗了一堆code,然后试过python链家的code,然后发现最简单的是一个用R来爬的
然而,那个code居然只能爬租房栏目的,我改成二手房或新房栏目的网址,不知道有什么bug,在pagetree就有问题了~so,如果有熟悉R的高手,请指教,谢谢:

library(XML)

# max页数
url<- htmlParse("http://esf.tj.fang.com/house/i31/",encoding='GBK')

# url地址list
urlist  <- paste("http://esf.tj.fang.com/house/i3",1:10,sep="")


# 初始化
t_addr <- character()
t_mode <- character()
t_price <- character()
content <- data.frame()
t_content <- data.frame()

# 循环提取页面信息
for(url in urlist){

  #下载网址
  pagetree <- htmlParse(url,encoding='GBK')

    #利用XPATH筛选 (这部分可能是不对的,但是上面的pagetree好像已经有问题了)
  t_addr <- xpathSApply (pagetree, "//*/p [@class='gray6 mt20']",xmlValue)
  t_mode <- xpathSApply (pagetree, "//*/p [@class='font16 mt20 bold']",xmlValue)
  t_price <- xpathSApply (pagetree, "//*/p [@class='mt5 alingC']",xmlValue)


  t_mode <- gsub("[\\r\\n\\s]", "", t_mode, perl = TRUE)
  t_content <- data.frame(t_addr,t_mode,t_price,stringsAsFactors=FALSE)

  content <- rbind(content,t_content)
}

write.csv(content,file="天津租房信息.csv",row.names=F)


举报 使用道具
| 回复

共 2 个关于本帖的回复 最后回复于 2018-3-30 11:18

Fuller 管理员 发表于 2016-10-24 21:38:00 | 显示全部楼层
可以仿照采集安居客的例子,用Python实现。这个例子的代码是调试好的,采集规则不用自己写程序,用集搜客的直观标注功能生成规则,然后通过api调用这个规则,而python部分的代码是通用的,几乎不用修改。所以,改成采集链家的过程很简单
举报 使用道具
maomao 论坛元老 发表于 2018-3-30 11:18:29 | 显示全部楼层
现在Gooseeker有房地产数据DIY,只用输入网址,就可以采集房天下,安居客,链家,Q房网,中原地产了。


房天下.png
举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

精彩推荐

  • Gephi社会网络分析-马蜂窝游记文本分词并同
  • Gephi社会网络分析-基于马蜂窝游记文本以词
  • 知乎话题文本根据词语间距筛选后生成共词矩
  • 马蜂窝游记文本分词后以词语间距为筛选条件
  • 学习使用apriori算法挖掘关联关系

热门用户

GMT+8, 2024-4-16 12:57