[R-br] Coletar informações (texto) de sites

Lucas Barbosa lucasbcr em gmail.com
Sábado Outubro 22 20:28:07 BRST 2011


Eu costumo usar a *strsplit*, mas só pq ainda não criei coragem de aprender
a usar isso aí que o Henrique mostrou.


Em 22 de outubro de 2011 14:30, Henrique Dallazuanna <wwwhsd em gmail.com>escreveu:

> Tente assim
>
> library(XML)
>
> url <- "
> http://www.pr.agenciasebrae.com.br/noticia.kmf?canal=724&cod=12211380"
>
> Lines <- readLines(url)
> h <- htmlTreeParse(Lines, asText = TRUE, useInternalNodes = TRUE)
>
>  xpathApply(h,
> "//h1|//p[@class='sub_tit']|//div[@class='clr']//p[@class='left']",
> xmlValue)
>
> 2011/10/21 Daniel Dantas <daniel.dantas em hotmail.com>:
> > Pessoal, como faço pra "limpar" as strings que eu não quero que
> > surgem quando executo o comando abaixo?
> >
> > #################
> > url <-
> > "http://www.pr.agenciasebrae.com.br/noticia.kmf?canal=724&cod=12211380"
> > dados=readLines(paste(url))
> > textos = sapply(strsplit(dados[c(34,35,145)],"\t"),FUN =function(x)
> > paste(x,collapse=""))
> > textos
> > #################
> >
> > a saída do comando acima é esta:
> >
> > [1] "<meta property=\"og:title\" content=\"Em Curitiba, seminário mostra
> > como Lei Geral contribui para o desenvolvimento municipal\" />"
> > [2] "<meta property=\"og:description\" content=\"Sebrae/PR reúne
> lideranças
> > da região centro-sul para apresentar casos de sucesso e mostrar formas de
> > implantação da legislação\" />"
> > [3] "                    <p class=\"left\">04.08.2011 | 09:00"
> >
> >
> > e eu soh quero:
> > da 1° linha: Em Curitiba, seminário mostra como Lei Geral contribui para
> o
> > desenvolvimento municipal
> > da 2° linha: Sebrae/PR reúne lideranças da região centro-sul para
> apresentar
> > casos de sucesso e mostrar formas de implantação da legislação
> > da 3° linha: 04.08.2011
> >
> > então, para facilitar, os excessos são:
> > "<meta property=\
> > "og:title\
> > " content=\
> > "og:description\"
> > <p class=\"left\">
> >  | 09:00"  (esse aqui varia quando mudo a URL)
> >
> > outra URL para testar, caso
> > precisem:
> http://www.pr.agenciasebrae.com.br/noticia.kmf?canal=724&cod=12201212
> >
> > estava lendo no arquivo de e-mails da lista, sobre strsplit mas n to
> > conseguindo usar.... até o Luiz, hoje mesmo usou essa função mas ele só
> > "pegou" o que queria, e eu quero remover os "excessos"
> >
> > Tenho que fazer isso para vários outros sites, então quero só jogar a URL
> e
> > que ele me retorne o título, subtítulo e data da notícia e o link.
> >
> > Um abraço e meu agradecimento desde já!!
> >
> >
> >> From: wwwhsd em gmail.com
> >> Date: Thu, 20 Oct 2011 21:07:01 -0200
> >> To: r-br em listas.c3sl.ufpr.br
> >> Subject: Re: [R-br] Coletar informações (texto) de sites
> >>
> >> Tente assim:
> >>
> >> library(XML)
> >> u <- "http://www.cnm.org.br/eleicao/mu_ele_prefeito.asp?iIdMun=%s"
> >>
> >> # Quais munícipios vc precisa
> >> ids <- c(100141003, 100141095)
> >>
> >> # Usando XPATH query
> >> fGetNome <- function(x, ...) {
> >> Lines <- readLines(x)
> >> h <- htmlTreeParse(Lines, asText = TRUE, useInternalNodes = TRUE)
> >> gsub("\n|\t", "", xpathApply(h, "//table//td[@width='80%']", xmlValue))
> >> }
> >>
> >> lapply(sprintf(u, ids), fGetNome)
> >>
> >>
> >>
> >> 2011/10/20 Daniel Dantas <daniel.dantas em hotmail.com>:
> >> > Boa tarde pessoal,
> >> >
> >> > Existe alguma maneira de "pedir" para o R entrar neste site
> >> > http://www.cnm.org.br/eleicao/mu_ele_prefeito.asp?iIdMun=100141003 e
> me
> >> > retornar o nome do prefeito de 2008 e de 2004?
> >> >
> >> > O objetivo disto é obter a listagem dos prefeitos de 2004 e de 2008
> para
> >> > ver
> >> > quem foi reeleito, se está no 1° ou 2° mandato.
> >> >
> >> > Para cada município, o link muda apenas o final, então tem como
> >> > programar
> >> > para que ele abra os links de todos os municípios do estado do PARANÁ,
> >> > mas
> >> > não sei como fazer ele me retornar o nome do prefeito.
> >> >
> >> > Algo interessante que descobri agora, não sei é por causa do Internet
> >> > Explorer ou é do site, mas se apertarmos com o botão direito no campo
> >> > onde
> >> > está escrito o nome do prefeito, surge-se a opção de exportar para
> Excel
> >> > as
> >> > informações daquele ano. Eu poderia fazer isso 399 (qtde de municípios
> >> > do PR) vezes para o ano de 2004 e 399 para o ano de 2008 e pedir para
> o
> >> > R consolidar em 1 planilha. Mas mesmo assim dá um certo trabalho
> salvar
> >> > 798
> >> > planilhas.
> >> >
> >> > Alguém sabe um procedimento mais simples? Espero que eu tenha consigo
> me
> >> > fazer entender.
> >> >
> >> > Obrigado,
> >> > Daniel
> >> >
> >> > _______________________________________________
> >> > R-br mailing list
> >> > R-br em listas.c3sl.ufpr.br
> >> > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> >> > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> >> > código
> >> > mínimo reproduzível.
> >> >
> >>
> >>
> >>
> >> --
> >> Henrique Dallazuanna
> >> Curitiba-Paraná-Brasil
> >> 25° 25' 40" S 49° 16' 22" O
> >> _______________________________________________
> >> R-br mailing list
> >> R-br em listas.c3sl.ufpr.br
> >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> >> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> >> código mínimo reproduzível.
> >
> > _______________________________________________
> > R-br mailing list
> > R-br em listas.c3sl.ufpr.br
> > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código
> > mínimo reproduzível.
> >
>
>
>
> --
> Henrique Dallazuanna
> Curitiba-Paraná-Brasil
> 25° 25' 40" S 49° 16' 22" O
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20111022/f0729733/attachment.html>


Mais detalhes sobre a lista de discussão R-br