WebScraping - Como passar informações ao site antes do readLines

Boa tarde R-Br. Mais uma vez peço a vocês uma orientação de caminho para descobrir como solucionar problemas relacionados a web scraping. Hoje consigo ler códigos HTML de ṕáginas atráves do readLines e depois extrair os dados que me interessam utilizando funções como grep, gsub e regexpr. Evolui nisso e tenho conseguido resultados bastante interessantes. O problema é que nem sempre o que é exibido no navegador, está disponível no código fonte da página. Por exemplo, a página inicial do site Webmotors ( http://www.webmotors.com.br/index.html) apresenta um box de pesquisa. Escolhendo, na página, os campos marca = Chevrolet, modelo = Astra, estado = AM e cidade = Manaus e clicando em BUSCAR, encontro esse resultado: http://www.webmotors.com.br/Webmotors/Compra/carrosResultado/carros-resultad... E assim consigo extrair com o R as informações dos veículos Astra a venda em Manaus. Porém, como posso fazer para o R informar ao site que desejo fazer essa busca? Gostaria de automatizar essa parte. Sei que na URL resultado basta trocar os campos como &modelo=1042 ou marca=2, etc... mas também não sei quais são os possíveis valores para esses campos. Ressalto que esse problema é um exemplo. Gostaria de aprender a fazer chamada às funções (acredito que são as .js) da página para construir as páginas com os resultados e então importar com o readLines para guardar os dados de meu interesse. Espero ter sido claro no questionamento. Agradeço qualquer ajuda. Abraços, Paulo Nogueira Starzynski

Paulo, Veja a função postForm do pacote RCurl, pois ela faz exatamente o post em formulários web. 2012/1/31 Paulo Nogueira <paulons@gmail.com>
Boa tarde R-Br. Mais uma vez peço a vocês uma orientação de caminho para descobrir como solucionar problemas relacionados a web scraping.
Hoje consigo ler códigos HTML de ṕáginas atráves do readLines e depois extrair os dados que me interessam utilizando funções como grep, gsub e regexpr. Evolui nisso e tenho conseguido resultados bastante interessantes. O problema é que nem sempre o que é exibido no navegador, está disponível no código fonte da página.
Por exemplo, a página inicial do site Webmotors ( http://www.webmotors.com.br/index.html) apresenta um box de pesquisa. Escolhendo, na página, os campos marca = Chevrolet, modelo = Astra, estado = AM e cidade = Manaus e clicando em BUSCAR, encontro esse resultado:
http://www.webmotors.com.br/Webmotors/Compra/carrosResultado/carros-resultad...
E assim consigo extrair com o R as informações dos veículos Astra a venda em Manaus. Porém, como posso fazer para o R informar ao site que desejo fazer essa busca? Gostaria de automatizar essa parte. Sei que na URL resultado basta trocar os campos como &modelo=1042 ou marca=2, etc... mas também não sei quais são os possíveis valores para esses campos.
Ressalto que esse problema é um exemplo. Gostaria de aprender a fazer chamada às funções (acredito que são as .js) da página para construir as páginas com os resultados e então importar com o readLines para guardar os dados de meu interesse. Espero ter sido claro no questionamento. Agradeço qualquer ajuda.
Abraços, Paulo Nogueira Starzynski
_______________________________________________ R-br mailing list R-br@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

Obrigado Henrique, vou olhar. Grato, Paulo Em 31 de janeiro de 2012 21:43, Henrique Dallazuanna <wwwhsd@gmail.com>escreveu:
Paulo,
Veja a função postForm do pacote RCurl, pois ela faz exatamente o post em formulários web.
2012/1/31 Paulo Nogueira <paulons@gmail.com>
Boa tarde R-Br. Mais uma vez peço a vocês uma orientação de caminho para descobrir como solucionar problemas relacionados a web scraping.
Hoje consigo ler códigos HTML de ṕáginas atráves do readLines e depois extrair os dados que me interessam utilizando funções como grep, gsub e regexpr. Evolui nisso e tenho conseguido resultados bastante interessantes. O problema é que nem sempre o que é exibido no navegador, está disponível no código fonte da página.
Por exemplo, a página inicial do site Webmotors ( http://www.webmotors.com.br/index.html) apresenta um box de pesquisa. Escolhendo, na página, os campos marca = Chevrolet, modelo = Astra, estado = AM e cidade = Manaus e clicando em BUSCAR, encontro esse resultado:
http://www.webmotors.com.br/Webmotors/Compra/carrosResultado/carros-resultad...
E assim consigo extrair com o R as informações dos veículos Astra a venda em Manaus. Porém, como posso fazer para o R informar ao site que desejo fazer essa busca? Gostaria de automatizar essa parte. Sei que na URL resultado basta trocar os campos como &modelo=1042 ou marca=2, etc... mas também não sei quais são os possíveis valores para esses campos.
Ressalto que esse problema é um exemplo. Gostaria de aprender a fazer chamada às funções (acredito que são as .js) da página para construir as páginas com os resultados e então importar com o readLines para guardar os dados de meu interesse. Espero ter sido claro no questionamento. Agradeço qualquer ajuda.
Abraços, Paulo Nogueira Starzynski
_______________________________________________ R-br mailing list R-br@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@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.

www.maplink.com.brHenrique, dei mais uma mexida aqui e ainda não resolvi meu problema. Talvez eu não tenha sido claro na pergunta, então vou mudar o exemplo. Quando acesso o site Maplink <http://www.maplink.com.br> aparece um mapa da cidade de São Paulo (minha localidade) e um box na direita com a informação de quantos quilômetros de congestionamento a cidade apresenta no momento (aliás, estamos com 300km às 13:40!). url<-url('http://maplink.com.br/',"rt") map<-readLines(url) grep('Km',map) Ao rodar o código acima o R importa o código fonte da página, que não contem o valor 300. Ao abrir o Chrome ou Firefox e utilizar a opção "Inspecionar Elemento" é possível encontrar o 300 no meio do código. Será possível importar no R o código HTML que eu vejo no inspecionar elemento? Isso seria suficiente e resolveria uma séria de questões que tenho. Alguém já fez algo semelhante a isso ou pode dar a dica de algum caminho, mesmo sem o R? Abraços, Paulo Em 31 de janeiro de 2012 21:43, Henrique Dallazuanna <wwwhsd@gmail.com>escreveu:
Paulo,
Veja a função postForm do pacote RCurl, pois ela faz exatamente o post em formulários web.
2012/1/31 Paulo Nogueira <paulons@gmail.com>
Boa tarde R-Br. Mais uma vez peço a vocês uma orientação de caminho para descobrir como solucionar problemas relacionados a web scraping.
Hoje consigo ler códigos HTML de ṕáginas atráves do readLines e depois extrair os dados que me interessam utilizando funções como grep, gsub e regexpr. Evolui nisso e tenho conseguido resultados bastante interessantes. O problema é que nem sempre o que é exibido no navegador, está disponível no código fonte da página.
Por exemplo, a página inicial do site Webmotors ( http://www.webmotors.com.br/index.html) apresenta um box de pesquisa. Escolhendo, na página, os campos marca = Chevrolet, modelo = Astra, estado = AM e cidade = Manaus e clicando em BUSCAR, encontro esse resultado:
http://www.webmotors.com.br/Webmotors/Compra/carrosResultado/carros-resultad...
E assim consigo extrair com o R as informações dos veículos Astra a venda em Manaus. Porém, como posso fazer para o R informar ao site que desejo fazer essa busca? Gostaria de automatizar essa parte. Sei que na URL resultado basta trocar os campos como &modelo=1042 ou marca=2, etc... mas também não sei quais são os possíveis valores para esses campos.
Ressalto que esse problema é um exemplo. Gostaria de aprender a fazer chamada às funções (acredito que são as .js) da página para construir as páginas com os resultados e então importar com o readLines para guardar os dados de meu interesse. Espero ter sido claro no questionamento. Agradeço qualquer ajuda.
Abraços, Paulo Nogueira Starzynski
_______________________________________________ R-br mailing list R-br@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@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.

Paulo, Esses casos ocorrem pois o conteúdo é carregado dinamicamente (via Ajax, jQuery, etc..), portanto o conteúdo não fica disponível no Source Code da página. Uma alternativa pode ser utilizado abaixo, ou ainda alternativas como http://maplink.com.br/transito/sao-paulo-sp que carrega o coteudo diretamente na página. ## Para Windows library(RDCOMClient) library(XML) ieApp <- COMCreate("InternetExplorer.Application") ieApp[['Visible']] <- TRUE ieApp$Navigate("http://www.maplink.com.br") ieApp$Document()$Body()$OuterHTML() 2012/2/13 Paulo Nogueira <paulons@gmail.com>
www.maplink.com.brHenrique, dei mais uma mexida aqui e ainda não resolvi meu problema. Talvez eu não tenha sido claro na pergunta, então vou mudar o exemplo.
Quando acesso o site Maplink <http://www.maplink.com.br> aparece um mapa da cidade de São Paulo (minha localidade) e um box na direita com a informação de quantos quilômetros de congestionamento a cidade apresenta no momento (aliás, estamos com 300km às 13:40!).
url<-url('http://maplink.com.br/',"rt") map<-readLines(url) grep('Km',map)
Ao rodar o código acima o R importa o código fonte da página, que não contem o valor 300. Ao abrir o Chrome ou Firefox e utilizar a opção "Inspecionar Elemento" é possível encontrar o 300 no meio do código. Será possível importar no R o código HTML que eu vejo no inspecionar elemento? Isso seria suficiente e resolveria uma séria de questões que tenho.
Alguém já fez algo semelhante a isso ou pode dar a dica de algum caminho, mesmo sem o R?
Abraços, Paulo
Em 31 de janeiro de 2012 21:43, Henrique Dallazuanna <wwwhsd@gmail.com>escreveu:
Paulo,
Veja a função postForm do pacote RCurl, pois ela faz exatamente o post em formulários web.
2012/1/31 Paulo Nogueira <paulons@gmail.com>
Boa tarde R-Br. Mais uma vez peço a vocês uma orientação de caminho para descobrir como solucionar problemas relacionados a web scraping.
Hoje consigo ler códigos HTML de ṕáginas atráves do readLines e depois extrair os dados que me interessam utilizando funções como grep, gsub e regexpr. Evolui nisso e tenho conseguido resultados bastante interessantes. O problema é que nem sempre o que é exibido no navegador, está disponível no código fonte da página.
Por exemplo, a página inicial do site Webmotors ( http://www.webmotors.com.br/index.html) apresenta um box de pesquisa. Escolhendo, na página, os campos marca = Chevrolet, modelo = Astra, estado = AM e cidade = Manaus e clicando em BUSCAR, encontro esse resultado:
http://www.webmotors.com.br/Webmotors/Compra/carrosResultado/carros-resultad...
E assim consigo extrair com o R as informações dos veículos Astra a venda em Manaus. Porém, como posso fazer para o R informar ao site que desejo fazer essa busca? Gostaria de automatizar essa parte. Sei que na URL resultado basta trocar os campos como &modelo=1042 ou marca=2, etc... mas também não sei quais são os possíveis valores para esses campos.
Ressalto que esse problema é um exemplo. Gostaria de aprender a fazer chamada às funções (acredito que são as .js) da página para construir as páginas com os resultados e então importar com o readLines para guardar os dados de meu interesse. Espero ter sido claro no questionamento. Agradeço qualquer ajuda.
Abraços, Paulo Nogueira Starzynski
_______________________________________________ R-br mailing list R-br@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@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@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

Henrique, obrigado pelas dicas. Uso Ubuntu mas vou tentar adaptar o código que me passou e estudar o que posso fazer com ele. Muito obrigado. Paulo NS Em 14 de fevereiro de 2012 23:24, Henrique Dallazuanna <wwwhsd@gmail.com>escreveu:
Paulo,
Esses casos ocorrem pois o conteúdo é carregado dinamicamente (via Ajax, jQuery, etc..), portanto o conteúdo não fica disponível no Source Code da página.
Uma alternativa pode ser utilizado abaixo, ou ainda alternativas como http://maplink.com.br/transito/sao-paulo-sp que carrega o coteudo diretamente na página.
## Para Windows library(RDCOMClient) library(XML)
ieApp <- COMCreate("InternetExplorer.Application")
ieApp[['Visible']] <- TRUE ieApp$Navigate("http://www.maplink.com.br")
ieApp$Document()$Body()$OuterHTML()
2012/2/13 Paulo Nogueira <paulons@gmail.com>
www.maplink.com.brHenrique, dei mais uma mexida aqui e ainda não resolvi meu problema. Talvez eu não tenha sido claro na pergunta, então vou mudar o exemplo.
Quando acesso o site Maplink <http://www.maplink.com.br> aparece um mapa da cidade de São Paulo (minha localidade) e um box na direita com a informação de quantos quilômetros de congestionamento a cidade apresenta no momento (aliás, estamos com 300km às 13:40!).
url<-url('http://maplink.com.br/',"rt") map<-readLines(url) grep('Km',map)
Ao rodar o código acima o R importa o código fonte da página, que não contem o valor 300. Ao abrir o Chrome ou Firefox e utilizar a opção "Inspecionar Elemento" é possível encontrar o 300 no meio do código. Será possível importar no R o código HTML que eu vejo no inspecionar elemento? Isso seria suficiente e resolveria uma séria de questões que tenho.
Alguém já fez algo semelhante a isso ou pode dar a dica de algum caminho, mesmo sem o R?
Abraços, Paulo
Em 31 de janeiro de 2012 21:43, Henrique Dallazuanna <wwwhsd@gmail.com>escreveu:
Paulo,
Veja a função postForm do pacote RCurl, pois ela faz exatamente o post em formulários web.
2012/1/31 Paulo Nogueira <paulons@gmail.com>
Boa tarde R-Br. Mais uma vez peço a vocês uma orientação de caminho para descobrir como solucionar problemas relacionados a web scraping.
Hoje consigo ler códigos HTML de ṕáginas atráves do readLines e depois extrair os dados que me interessam utilizando funções como grep, gsub e regexpr. Evolui nisso e tenho conseguido resultados bastante interessantes. O problema é que nem sempre o que é exibido no navegador, está disponível no código fonte da página.
Por exemplo, a página inicial do site Webmotors ( http://www.webmotors.com.br/index.html) apresenta um box de pesquisa. Escolhendo, na página, os campos marca = Chevrolet, modelo = Astra, estado = AM e cidade = Manaus e clicando em BUSCAR, encontro esse resultado:
http://www.webmotors.com.br/Webmotors/Compra/carrosResultado/carros-resultad...
E assim consigo extrair com o R as informações dos veículos Astra a venda em Manaus. Porém, como posso fazer para o R informar ao site que desejo fazer essa busca? Gostaria de automatizar essa parte. Sei que na URL resultado basta trocar os campos como &modelo=1042 ou marca=2, etc... mas também não sei quais são os possíveis valores para esses campos.
Ressalto que esse problema é um exemplo. Gostaria de aprender a fazer chamada às funções (acredito que são as .js) da página para construir as páginas com os resultados e então importar com o readLines para guardar os dados de meu interesse. Espero ter sido claro no questionamento. Agradeço qualquer ajuda.
Abraços, Paulo Nogueira Starzynski
_______________________________________________ R-br mailing list R-br@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@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@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@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.

Paulo, Eu abri agora a página e está com 533 km congestionados, mas não aparece nenhum número 533 no html. Talvez esse 300 que você encontrou representava outra coisa. Eu fiz algo parecido para resolver o problema de calcular distâncias entre cidades, mas foi com o Google Maps. Meu caso foi simples porque os valores de interesse já estavam no html, mas a parte de congestionamento do maplink parece estar só no java script mesmo. Talvez você encontre essa informação no html de outro lugar desse site, vou dar uma olhada aqui. Att., Lucas Cusinato Em 15 de fevereiro de 2012 10:14, Paulo Nogueira <paulons@gmail.com>escreveu:
Henrique, obrigado pelas dicas. Uso Ubuntu mas vou tentar adaptar o código que me passou e estudar o que posso fazer com ele. Muito obrigado.
Paulo NS
Em 14 de fevereiro de 2012 23:24, Henrique Dallazuanna <wwwhsd@gmail.com>escreveu:
Paulo,
Esses casos ocorrem pois o conteúdo é carregado dinamicamente (via Ajax, jQuery, etc..), portanto o conteúdo não fica disponível no Source Code da página.
Uma alternativa pode ser utilizado abaixo, ou ainda alternativas como http://maplink.com.br/transito/sao-paulo-sp que carrega o coteudo diretamente na página.
## Para Windows library(RDCOMClient) library(XML)
ieApp <- COMCreate("InternetExplorer.Application")
ieApp[['Visible']] <- TRUE ieApp$Navigate("http://www.maplink.com.br")
ieApp$Document()$Body()$OuterHTML()
2012/2/13 Paulo Nogueira <paulons@gmail.com>
www.maplink.com.brHenrique, dei mais uma mexida aqui e ainda não resolvi meu problema. Talvez eu não tenha sido claro na pergunta, então vou mudar o exemplo.
Quando acesso o site Maplink <http://www.maplink.com.br> aparece um mapa da cidade de São Paulo (minha localidade) e um box na direita com a informação de quantos quilômetros de congestionamento a cidade apresenta no momento (aliás, estamos com 300km às 13:40!).
url<-url('http://maplink.com.br/',"rt") map<-readLines(url) grep('Km',map)
Ao rodar o código acima o R importa o código fonte da página, que não contem o valor 300. Ao abrir o Chrome ou Firefox e utilizar a opção "Inspecionar Elemento" é possível encontrar o 300 no meio do código. Será possível importar no R o código HTML que eu vejo no inspecionar elemento? Isso seria suficiente e resolveria uma séria de questões que tenho.
Alguém já fez algo semelhante a isso ou pode dar a dica de algum caminho, mesmo sem o R?
Abraços, Paulo
Em 31 de janeiro de 2012 21:43, Henrique Dallazuanna <wwwhsd@gmail.com>escreveu:
Paulo,
Veja a função postForm do pacote RCurl, pois ela faz exatamente o post em formulários web.
2012/1/31 Paulo Nogueira <paulons@gmail.com>
Boa tarde R-Br. Mais uma vez peço a vocês uma orientação de caminho para descobrir como solucionar problemas relacionados a web scraping.
Hoje consigo ler códigos HTML de ṕáginas atráves do readLines e depois extrair os dados que me interessam utilizando funções como grep, gsub e regexpr. Evolui nisso e tenho conseguido resultados bastante interessantes. O problema é que nem sempre o que é exibido no navegador, está disponível no código fonte da página.
Por exemplo, a página inicial do site Webmotors ( http://www.webmotors.com.br/index.html) apresenta um box de pesquisa. Escolhendo, na página, os campos marca = Chevrolet, modelo = Astra, estado = AM e cidade = Manaus e clicando em BUSCAR, encontro esse resultado:
http://www.webmotors.com.br/Webmotors/Compra/carrosResultado/carros-resultad...
E assim consigo extrair com o R as informações dos veículos Astra a venda em Manaus. Porém, como posso fazer para o R informar ao site que desejo fazer essa busca? Gostaria de automatizar essa parte. Sei que na URL resultado basta trocar os campos como &modelo=1042 ou marca=2, etc... mas também não sei quais são os possíveis valores para esses campos.
Ressalto que esse problema é um exemplo. Gostaria de aprender a fazer chamada às funções (acredito que são as .js) da página para construir as páginas com os resultados e então importar com o readLines para guardar os dados de meu interesse. Espero ter sido claro no questionamento. Agradeço qualquer ajuda.
Abraços, Paulo Nogueira Starzynski
_______________________________________________ R-br mailing list R-br@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@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@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@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@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.

Achei, é só pegar o html de http://maplink.com.br/transito/sao-paulo-sp Tipo assim: *conexao <- url( "http://maplink.com.br/transito/sao-paulo-sp" ) pagina <- readLines(conexao) pos <- grep('<span class="km_status">', pagina) * ### eu vi que o trecho *<span class="km_status"> * vinha logo antes da quilometragem no html* pagina[ pos:(pos+2) ] close(conexao) * Pelo que eu vi aqui agora, a informação sempre estará na linha * pagina[pos+1]*. Mas é melhor verificar isso direito. Em 17 de fevereiro de 2012 18:20, Lucas Barbosa <lucasbcr@gmail.com>escreveu:
Paulo, Eu abri agora a página e está com 533 km congestionados, mas não aparece nenhum número 533 no html. Talvez esse 300 que você encontrou representava outra coisa. Eu fiz algo parecido para resolver o problema de calcular distâncias entre cidades, mas foi com o Google Maps. Meu caso foi simples porque os valores de interesse já estavam no html, mas a parte de congestionamento do maplink parece estar só no java script mesmo. Talvez você encontre essa informação no html de outro lugar desse site, vou dar uma olhada aqui. Att., Lucas Cusinato
Em 15 de fevereiro de 2012 10:14, Paulo Nogueira <paulons@gmail.com>escreveu:
Henrique, obrigado pelas dicas.
Uso Ubuntu mas vou tentar adaptar o código que me passou e estudar o que posso fazer com ele. Muito obrigado.
Paulo NS
Em 14 de fevereiro de 2012 23:24, Henrique Dallazuanna <wwwhsd@gmail.com>escreveu:
Paulo,
Esses casos ocorrem pois o conteúdo é carregado dinamicamente (via Ajax, jQuery, etc..), portanto o conteúdo não fica disponível no Source Code da página.
Uma alternativa pode ser utilizado abaixo, ou ainda alternativas como http://maplink.com.br/transito/sao-paulo-sp que carrega o coteudo diretamente na página.
## Para Windows library(RDCOMClient) library(XML)
ieApp <- COMCreate("InternetExplorer.Application")
ieApp[['Visible']] <- TRUE ieApp$Navigate("http://www.maplink.com.br")
ieApp$Document()$Body()$OuterHTML()
2012/2/13 Paulo Nogueira <paulons@gmail.com>
www.maplink.com.brHenrique, dei mais uma mexida aqui e ainda não resolvi meu problema. Talvez eu não tenha sido claro na pergunta, então vou mudar o exemplo.
Quando acesso o site Maplink <http://www.maplink.com.br> aparece um mapa da cidade de São Paulo (minha localidade) e um box na direita com a informação de quantos quilômetros de congestionamento a cidade apresenta no momento (aliás, estamos com 300km às 13:40!).
url<-url('http://maplink.com.br/',"rt") map<-readLines(url) grep('Km',map)
Ao rodar o código acima o R importa o código fonte da página, que não contem o valor 300. Ao abrir o Chrome ou Firefox e utilizar a opção "Inspecionar Elemento" é possível encontrar o 300 no meio do código. Será possível importar no R o código HTML que eu vejo no inspecionar elemento? Isso seria suficiente e resolveria uma séria de questões que tenho.
Alguém já fez algo semelhante a isso ou pode dar a dica de algum caminho, mesmo sem o R?
Abraços, Paulo
Em 31 de janeiro de 2012 21:43, Henrique Dallazuanna <wwwhsd@gmail.com>escreveu:
Paulo,
Veja a função postForm do pacote RCurl, pois ela faz exatamente o post em formulários web.
2012/1/31 Paulo Nogueira <paulons@gmail.com>
Boa tarde R-Br. Mais uma vez peço a vocês uma orientação de caminho para descobrir como solucionar problemas relacionados a web scraping.
Hoje consigo ler códigos HTML de ṕáginas atráves do readLines e depois extrair os dados que me interessam utilizando funções como grep, gsub e regexpr. Evolui nisso e tenho conseguido resultados bastante interessantes. O problema é que nem sempre o que é exibido no navegador, está disponível no código fonte da página.
Por exemplo, a página inicial do site Webmotors ( http://www.webmotors.com.br/index.html) apresenta um box de pesquisa. Escolhendo, na página, os campos marca = Chevrolet, modelo = Astra, estado = AM e cidade = Manaus e clicando em BUSCAR, encontro esse resultado:
http://www.webmotors.com.br/Webmotors/Compra/carrosResultado/carros-resultad...
E assim consigo extrair com o R as informações dos veículos Astra a venda em Manaus. Porém, como posso fazer para o R informar ao site que desejo fazer essa busca? Gostaria de automatizar essa parte. Sei que na URL resultado basta trocar os campos como &modelo=1042 ou marca=2, etc... mas também não sei quais são os possíveis valores para esses campos.
Ressalto que esse problema é um exemplo. Gostaria de aprender a fazer chamada às funções (acredito que são as .js) da página para construir as páginas com os resultados e então importar com o readLines para guardar os dados de meu interesse. Espero ter sido claro no questionamento. Agradeço qualquer ajuda.
Abraços, Paulo Nogueira Starzynski
_______________________________________________ R-br mailing list R-br@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@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@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@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@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.

Lucas, realmente eu não tinha visto essa outra página com a quilometragem estática, no html. Resolve o problema nesse momento, mas algo a ser feito com calma é estudar a solução proposta pelo Henrique. Obrigado. abs Paulo Em 17 de fevereiro de 2012 18:37, Lucas Barbosa <lucasbcr@gmail.com>escreveu:
Achei, é só pegar o html de http://maplink.com.br/transito/sao-paulo-sp Tipo assim: *conexao <- url( "http://maplink.com.br/transito/sao-paulo-sp" ) pagina <- readLines(conexao) pos <- grep('<span class="km_status">', pagina) * ### eu vi que o trecho *<span class="km_status"> * vinha logo antes da quilometragem no html* pagina[ pos:(pos+2) ] close(conexao) * Pelo que eu vi aqui agora, a informação sempre estará na linha * pagina[pos+1]*. Mas é melhor verificar isso direito.
Em 17 de fevereiro de 2012 18:20, Lucas Barbosa <lucasbcr@gmail.com>escreveu:
Paulo,
Eu abri agora a página e está com 533 km congestionados, mas não aparece nenhum número 533 no html. Talvez esse 300 que você encontrou representava outra coisa. Eu fiz algo parecido para resolver o problema de calcular distâncias entre cidades, mas foi com o Google Maps. Meu caso foi simples porque os valores de interesse já estavam no html, mas a parte de congestionamento do maplink parece estar só no java script mesmo. Talvez você encontre essa informação no html de outro lugar desse site, vou dar uma olhada aqui. Att., Lucas Cusinato
Em 15 de fevereiro de 2012 10:14, Paulo Nogueira <paulons@gmail.com>escreveu:
Henrique, obrigado pelas dicas.
Uso Ubuntu mas vou tentar adaptar o código que me passou e estudar o que posso fazer com ele. Muito obrigado.
Paulo NS
Em 14 de fevereiro de 2012 23:24, Henrique Dallazuanna <wwwhsd@gmail.com
escreveu:
Paulo,
Esses casos ocorrem pois o conteúdo é carregado dinamicamente (via Ajax, jQuery, etc..), portanto o conteúdo não fica disponível no Source Code da página.
Uma alternativa pode ser utilizado abaixo, ou ainda alternativas como http://maplink.com.br/transito/sao-paulo-sp que carrega o coteudo diretamente na página.
## Para Windows library(RDCOMClient) library(XML)
ieApp <- COMCreate("InternetExplorer.Application")
ieApp[['Visible']] <- TRUE ieApp$Navigate("http://www.maplink.com.br")
ieApp$Document()$Body()$OuterHTML()
2012/2/13 Paulo Nogueira <paulons@gmail.com>
www.maplink.com.brHenrique, dei mais uma mexida aqui e ainda não resolvi meu problema. Talvez eu não tenha sido claro na pergunta, então vou mudar o exemplo.
Quando acesso o site Maplink <http://www.maplink.com.br> aparece um mapa da cidade de São Paulo (minha localidade) e um box na direita com a informação de quantos quilômetros de congestionamento a cidade apresenta no momento (aliás, estamos com 300km às 13:40!).
url<-url('http://maplink.com.br/',"rt") map<-readLines(url) grep('Km',map)
Ao rodar o código acima o R importa o código fonte da página, que não contem o valor 300. Ao abrir o Chrome ou Firefox e utilizar a opção "Inspecionar Elemento" é possível encontrar o 300 no meio do código. Será possível importar no R o código HTML que eu vejo no inspecionar elemento? Isso seria suficiente e resolveria uma séria de questões que tenho.
Alguém já fez algo semelhante a isso ou pode dar a dica de algum caminho, mesmo sem o R?
Abraços, Paulo
Em 31 de janeiro de 2012 21:43, Henrique Dallazuanna <wwwhsd@gmail.com
escreveu:
Paulo,
Veja a função postForm do pacote RCurl, pois ela faz exatamente o post em formulários web.
2012/1/31 Paulo Nogueira <paulons@gmail.com>
> Boa tarde R-Br. > Mais uma vez peço a vocês uma orientação de caminho para descobrir > como solucionar problemas relacionados a web scraping. > > Hoje consigo ler códigos HTML de ṕáginas atráves do readLines e > depois extrair os dados que me interessam utilizando funções como grep, > gsub e regexpr. Evolui nisso e tenho conseguido resultados bastante > interessantes. O problema é que nem sempre o que é exibido no navegador, > está disponível no código fonte da página. > > Por exemplo, a página inicial do site Webmotors ( > http://www.webmotors.com.br/index.html) apresenta um box de > pesquisa. Escolhendo, na página, os campos marca = Chevrolet, modelo = > Astra, estado = AM e cidade = Manaus e clicando em BUSCAR, encontro esse > resultado: > > http://www.webmotors.com.br/Webmotors/Compra/carrosResultado/carros-resultad... > > E assim consigo extrair com o R as informações dos veículos Astra a > venda em Manaus. > Porém, como posso fazer para o R informar ao site que desejo fazer > essa busca? Gostaria de automatizar essa parte. > Sei que na URL resultado basta trocar os campos como &modelo=1042 ou > marca=2, etc... mas também não sei quais são os possíveis valores para > esses campos. > > Ressalto que esse problema é um exemplo. Gostaria de aprender a > fazer chamada às funções (acredito que são as .js) da página para construir > as páginas com os resultados e então importar com o readLines para guardar > os dados de meu interesse. Espero ter sido claro no questionamento. > Agradeço qualquer ajuda. > > Abraços, > Paulo Nogueira Starzynski > > > > _______________________________________________ > R-br mailing list > R-br@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@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@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@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@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@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.
participantes (3)
-
Henrique Dallazuanna
-
Lucas Barbosa
-
Paulo Nogueira