6
페이지를 웹 스크래핑하려고합니다. 그러나 파서가 "HTTP 리소스를로드하지 못함"때문에 때때로 루프가 작동하지 않습니다. 문제는 페이지가 내 브라우저에로드되지 않으므로 코드에 문제가 없다는 것입니다.htmlParse 오류 처리 (HTTP 리소스로드 실패)
그러나 오류가 발견 된 각 페이지에 대한 예외를 생성 한 후 프로세스를 다시 시작해야하는 것은 매우 귀찮습니다. if 조건을 넣는 방법이 있는지 궁금합니다. 같은 오류가 발생하는 경우 다음 단계에서 루프를 다시 시작합니다.
나는 htmlParse에 대한 도움말 페이지를 찾았으며 오류 인수가 있지만 사용 방법을 알 수 없습니다. 내 if 조건에 대한 아이디어?
if(require(RCurl) == F) install.packages('RCurl')
if(require(XML) == F) install.packages('XML')
if(require(seqinr) == F) install.packages('seqinr')
for (i in 575:585){
currentPage <- i # define pagina inicial da busca
# Link que ser? procurado
link <- paste("http://www.cnj.jus.br/improbidade_adm/visualizar_condenacao.php?seq_condenacao=",
currentPage,
sep='')
doc <- htmlParse(link, encoding = "UTF-8") #this will preserve characters
tables <- readHTMLTable(doc, stringsAsFactors = FALSE)
if(length(tables) != 0) {
tabela2 <- as.data.frame(tables[10])
tabela2[,1] <- gsub("\\n", " ", tabela2[,1])
tabela2[,2] <- gsub("\\n", " ", tabela2[,2])
tabela2[,2] <- gsub("\\t", " ", tabela2[,2])
listofTabelas[[i]] <- tabela2
tabela1 <- do.call("rbind", listofTabelas)
names(tabela1) <- c("Variaveis", "status")
}
}
- htmlParse (콘텐츠 (z), 인코딩 = "UTF-8") –
죄송 그것이 있어야 htmlParse '(대응 ...)'. 답변이 수정되었습니다. – jlhoward