在我最近的研究文本挖掘中。
这是我的R代码:
data <- list()
for( i in 0:8){
tmp <- paste('&page=', i, sep = '')
url <- paste('http://bbs.cyut.edu.tw/TopicClassList.aspx?ClassID=5', tmp, sep='')
html <- htmlParse(getURL(url))
url.list <- xpathSApply(html, "//table/tr[@style='height: 30px; font-size: small']/td/a[@href]", xmlAttrs)
url.list <- url.list[-2,]
data <- rbind(data, paste('http://bbs.cyut.edu.tw/', url.list, sep=''))
}
data <- unlist(data)
getwd()
setwd("C:/Users/user/Documents/doc4")
content_list <- list()
url_temp <- strsplit(data, '=')
id_list <- list()
for (i in 1:length(url_temp)){
id_list[[i]] <- url_temp[[i]][2]
}
getdoc <- function(line){
for (i in 1:length(id_list)) {
start <- regexpr('bbs', line)[1]
end <- regexpr(id_list[i], line)[1]
if(start != -1 & end != -1){
url <- substr(line, start, end+3)
html <- htmlParse(getURL(url), encoding='UTF-8')
doc <- xpathSApply(html, "//span", xmlValue)
name <- strsplit(url, '/')[[1]][3]
content_list[[i]] <- doc
write(doc, paste0(name, ".txt"))
}
}
}
sapply(data, getdoc)
url_temp
包含所有网址
我尝试在变量id_list
中输入一个URL。
但content_list
并不存在所有内容。哪里有错误?
我该如何解决?
答案 0 :(得分:1)
我已经解决了。
供大家参考。
有我的代码:
content_list <- list()
url_temp <- strsplit(data, '=')
id_list <- list()
for (i in 1:length(url_temp)){
id_list[[i]] <- url_temp[[i]][2]
}
getdoc <- function(line){
for (i in 1:length(id_list)) {
start <- regexpr('bbs', line)[1]
end <- regexpr(id_list[i], line)[1]
if(start != -1 & end != -1){
url <- substr(line, start, end+3)
html <- htmlParse(getURL(url), encoding='UTF-8')
doc <- xpathSApply(html, "//span", xmlValue)
name <- strsplit(url, '/')[[1]][3]
content_list[[i]] <- doc
lapply(content_list, write, "corpus.txt", append=TRUE, ncolumns=10000)
}
}
}