【自学笔记】关于用R下载网页表格

1、网站情况及爬虫目标

打开网站:http://gwy.rst.fujian.gov.cn/positiontable,里面有福建省各个市的岗位情况,点击“福州”可以看到网页发生变化,变为:http://gwy.rst.fujian.gov.cn/positiontable/1.htm,出现福州市的岗位表单,同理,其他市的岗位情况对应的网址也只是在网址中的“1.htm”发生变化,分别是“2.htm-9.htm”。因此要爬取所有市的岗位就只需要套一个循环。

2、批量输出的路径

如果爬虫得到各个市的岗位表,那么需要一个个输出,现在可以先定义好路径,到时候可以在爬虫的循环代码里直接输出:

 

#输出路径
city<- c("福州", "莆田", "泉州", "厦门", "漳州","龙岩","三明","南平","宁德")
out1<-as.character()
out_filePath<-as.character()
for (j in 1:9) 
{
  print(city[j]);
  outPath = "F:/考公/省考" ##输出路径
  out1[j]=paste(outPath,city[j],sep='/') ##输出路径名
  out_filePath[j]=paste(out1[j],"岗位",".csv",sep='') 
}
out_filePath

 3、爬虫代码

主要需要安装加载RCul包和XML包,并对包进行解析:

#安装包
install.packages("XML")
install.packages("RCurl)")
#加载包
library(XML)
library(RCurl)
#解析网页
for(i in 1:9)
{
url <- paste('http://gwy.rst.fujian.gov.cn/positiontable/',i,'.htm',sep='')
#这里网址随i的变化分别遍历9个表单
wp<-getURL(url,.encoding="utf8",followlocation=T)
doc <- htmlParse(file = wp,encoding ="utf8")#encoding看具体网页
tables <-readHTMLTable(doc,header=F)
write.csv(tables,file = out_filePath[i])#输出
}

 

4、结果

打开相应路径可以看到输出情况:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值