none
Navegar em pagina Web e pegar dados, navegação não funciona (WebBrowser,HttpWebClient) RRS feed

  • Pergunta

  • Bom dia a todos,

    Alguém ou já viu um método que possa navegar nessa URL incrementando a numeração final de maneira que a pagina faça o post para os próximas paginas, pois tente utilizando:WebBrowser,WebClient,HttpWebClient e sempre quando salvo os dados não vem somente o HTML e as funções.

    Toda sugestão é bem vinda.


    OBS: A página pelo que pude ver utilizar angularJs para exibição dos dados.


    GTSA vantagem de ser inteligente é que podemos fingir que somos imbecis enquanto ao contrario é completamente impossivel


    • Editado Mr. GMSOFT quinta-feira, 21 de janeiro de 2016 10:41
    quinta-feira, 21 de janeiro de 2016 10:40

Respostas

  • Olá, eu tenho um exemplo fazendo justamente isso, um web scraping no site da marvel, basicamente voce vai usar a lib HtmlAgilityPack, é bem tranquila de pegar, voce anda nos nós do HTML. No exemplo eu faço requests em diversas urls dentro da pagina, pode te ajudar a fazer um loop na sua url e pegar esses dados. Dê uma olhada nestes exemplos:

    https://github.com/ErickWendel/Demo.WebScraping.CSharp

    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Sugerido como Resposta Erick WendelMVP quinta-feira, 21 de janeiro de 2016 11:30
    • Não Sugerido como Resposta Marcos SJ quinta-feira, 21 de janeiro de 2016 12:14
    • Sugerido como Resposta Erick WendelMVP quinta-feira, 21 de janeiro de 2016 12:16
    • Marcado como Resposta Mr. GMSOFT quinta-feira, 21 de janeiro de 2016 12:42
    quinta-feira, 21 de janeiro de 2016 11:30
  • Tente utilizar da forma do exemplo, ao invés de reatualizar o browser, ele faz o download do HTML.

    Outra alternativa é usar o selenium web driver, ajuda bastante tbm

    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Sugerido como Resposta Erick WendelMVP quinta-feira, 21 de janeiro de 2016 12:17
    • Marcado como Resposta Mr. GMSOFT quinta-feira, 21 de janeiro de 2016 12:42
    quinta-feira, 21 de janeiro de 2016 12:17

Todas as Respostas

  • Olá, eu tenho um exemplo fazendo justamente isso, um web scraping no site da marvel, basicamente voce vai usar a lib HtmlAgilityPack, é bem tranquila de pegar, voce anda nos nós do HTML. No exemplo eu faço requests em diversas urls dentro da pagina, pode te ajudar a fazer um loop na sua url e pegar esses dados. Dê uma olhada nestes exemplos:

    https://github.com/ErickWendel/Demo.WebScraping.CSharp

    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Sugerido como Resposta Erick WendelMVP quinta-feira, 21 de janeiro de 2016 11:30
    • Não Sugerido como Resposta Marcos SJ quinta-feira, 21 de janeiro de 2016 12:14
    • Sugerido como Resposta Erick WendelMVP quinta-feira, 21 de janeiro de 2016 12:16
    • Marcado como Resposta Mr. GMSOFT quinta-feira, 21 de janeiro de 2016 12:42
    quinta-feira, 21 de janeiro de 2016 11:30
  • Muito bom exemplo, mais já faço isso no meu código usando um componente que fiz para executar javascript dentro do webBrowser, o problema é que ao requisitar a segunda pagina por exemplo: 

    browSerPlus.Navigate(""http://ph.global.nba.com/boxscore/#!/0021500004");

    Simplesmente a pagina não atualiza, fica na primeira e a url muda, mas o conteúdo não. Teste ai essa url e faz um loop de 0021500003 à 0021500010, vai ver que não sai da primeira pagina.


    GTSA vantagem de ser inteligente é que podemos fingir que somos imbecis enquanto ao contrario é completamente impossivel


    • Editado Marcos SJ quinta-feira, 21 de janeiro de 2016 11:48 Edição
    quinta-feira, 21 de janeiro de 2016 11:42
  • Tente utilizar da forma do exemplo, ao invés de reatualizar o browser, ele faz o download do HTML.

    Outra alternativa é usar o selenium web driver, ajuda bastante tbm

    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Sugerido como Resposta Erick WendelMVP quinta-feira, 21 de janeiro de 2016 12:17
    • Marcado como Resposta Mr. GMSOFT quinta-feira, 21 de janeiro de 2016 12:42
    quinta-feira, 21 de janeiro de 2016 12:17
  • Pior que já fiz esse teste e so salva a primeira pagina e não carrega as demais, a unica coisa que funcionou por assim dizer foi instanciar o browser a cada chamado no loop, pois o site não navega a não ser que a pagina esteja como "about:blank".

    Mais Obrigado assim mesmo, marcarei a resposta acima ,para caso sirva para outro usuário.

    GTSA vantagem de ser inteligente é que podemos fingir que somos imbecis enquanto ao contrario é completamente impossivel

    quinta-feira, 21 de janeiro de 2016 12:42