Uma das principais falhas curl
é que cada vez mais páginas da web estão tendo seu conteúdo principal pintado por uma resposta AJAX JavaScript que ocorre após a resposta HTTP inicial. curl
nunca capta esse conteúdo pós-pintado.
Portanto, para buscar esses tipos de páginas da Web na linha de comando, fui reduzido a escrever scripts em Ruby que levam o SeleniumRC a iniciar uma instância do Firefox e, em seguida, retornar o HTML de origem após a conclusão dessas chamadas AJAX.
Seria muito melhor ter uma solução de linha de comando mais enxuta para esse tipo de problema. Alguém sabe de algum?
Respostas:
Recentemente, comecei a usar o WebDriver do Selenium 2 em Java. Existe um driver chamado HtmlUnitDriver que suporta totalmente JavaScript, mas não inicia um navegador real.
Não é uma solução leve, mas faz o trabalho.
Eu projetei o código para executar a partir da linha de comando e salvar os dados da Web em arquivos.
fonte
Você já considerou Watir?
http://watir.com/
Quando você adiciona o pacote, pode executá-lo como um arquivo autônomo ou a partir de
irb
linha por linha depoisinclude 'watir-webdriver'
. Eu achei mais responsivo do queselenium-webdriver
, mas sem a GUI de gravação de teste para ajudar a elaborar condições de teste complexas.fonte