Don*_*n S 6 javascript xml screen-scraping r web-scraping
我能够从基本的html页面中删除数据,但是我在下面的网站上搜索时遇到了麻烦.看起来数据是通过javascript呈现的,我不知道如何解决这个问题.如果可能的话,我更愿意使用R来刮,但也可以使用Python.
有什么想法/建议吗?
编辑:我需要获取每个列表的年份/制造商/型号,S/N,价格,位置和简短描述(以"拍卖:"开头).
library(XML)
library(relenium)
##downloading website
website<- firefoxClass$new()
website$get("http://www.machinerytrader.com/list/list.aspx?pg=1&bcatid=4&DidSearch=1&EID=1&LP=MAT&ETID=5&catid=1015&mdlx=Contains&Cond=All&SO=26&btnSearch=Search&units=imperial")
doc <- htmlParse(website$getPageSource())
##reading tables and binding the information
tables <- readHTMLTable(doc, stringsAsFactors=FALSE)
data<-do.call("rbind", tables[seq(from=8, to=56, by=2)])
data<-cbind(data, sapply(lapply(tables[seq(from=9, to=57, by=2)], '[[', i=2), '[', 1))
rownames(data)<-NULL
names(data) <- c("year.man.model", "s.n", "price", "location", "auction")
Run Code Online (Sandbox Code Playgroud)
这将为您提供第一页所需的内容(此处仅显示前两行):
head(data,2)
year.man.model s.n price location auction
1 1972 AMERICAN 5530 GS14745W US $50,100 MI Auction: 1/9/2013; 4,796 Hours; ..
2 AUSTIN-WESTERN 307 307 US $3,400 MT Auction: 12/18/2013; AUSTIN-WESTERN track excavator.
Run Code Online (Sandbox Code Playgroud)
要获取所有页面,只需循环它们,并将其粘贴pg=i
到地址中即可。
归档时间: |
|
查看次数: |
1065 次 |
最近记录: |