Pergunta

Eu gostaria de ler o conteúdo de uma URL (eq, http://www.haaretz.com/ ) na R. Eu estou querendo saber como posso fazê-lo

Foi útil?

Solução

Não tenho certeza como você deseja processar a página, porque é realmente confuso. Como nós re-aprendeu nesta famosa pergunta stackoverflow , não é uma boa idéia para fazer regex em html, então você certamente vai querer analisar isso com o pacote XML.

Aqui está um exemplo para você começar:

require(RCurl)
require(XML)
webpage <- getURL("http://www.haaretz.com/")
webpage <- readLines(tc <- textConnection(webpage)); close(tc)
pagetree <- htmlTreeParse(webpage, error=function(...){}, useInternalNodes = TRUE)
# parse the tree by tables
x <- xpathSApply(pagetree, "//*/table", xmlValue)  
# do some clean up with regular expressions
x <- unlist(strsplit(x, "\n"))
x <- gsub("\t","",x)
x <- sub("^[[:space:]]*(.*?)[[:space:]]*$", "\\1", x, perl=TRUE)
x <- x[!(x %in% c("", "|"))]

Isso resulta em um vetor de caracteres de texto na maior parte apenas webpage (juntamente com alguns javascript):

> head(x)
[1] "Subscribe to Print Edition"              "Fri., December 04, 2009 Kislev 17, 5770" "Israel Time: 16:48 (EST+7)"           
[4] "  Make Haaretz your homepage"          "/*check the search form*/"               "function chkSearch()" 

Outras dicas

Sua melhor aposta pode ser o pacote XML - ver, por exemplo, este pergunta anterior .

Eu sei que você pediu R. Mas talvez python + beautifullsoup é o caminho a seguir aqui? Em seguida, fazer a sua análise com R de ter raspado a tela com beautifullsoup?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top