Pergunta

Eu tenho pesquisado sobre os navegadores sem cabeça disponíveis até o momento e encontrei htmlunit sendo usado bastante extensivamente. Temos alguma alternativa ao htmlunit com possível vantagem em comparação com o htmlunit?

Obrigado Nayn

Foi útil?

Solução 4

Vou usar o selênio para o meu caso de uso, pois ele me oferece usar o navegador real e nenhum desvio do que ele renderia no mundo real em comparação com o htmlunit. Estou planejando usar o Selenium2, que tem integração do Webdriver e oferece ótimas API e correções legais. Obrigado Nayn

Outras dicas

Até onde eu sei, htmlunit` é o navegador sem cabeça mais poderoso.

Quais são os seus problemas com isso?

Existem muitas outras bibliotecas que você pode usar para isso.

  • Se você precisar raspar o uso de dados de base XML Jtidy.
  • Se você precisar raspar dados específicos do HTML, você pode usar JSUP.

Bem, eu uso o JSUP - é muito mais rápido do que qualquer outra API.

O WebDriver com um Framebuffer virtual é a única alternativa real. A vantagem é que ele usa um navegador real; A desvantagem é que é mais uma dor de montar, e a API é muito mais pobre.

Eu uso o WebKit como navegador sem cabeça, através das ligações do Python do QT: http://www.riverbankcomputing.co.uk/static/docs/pyqt4/html/qtwebkit.html

O Webkit é o mecanismo de renderização usado pelo Chrome e Safari e é muito flexível.

Uma das minhas razões para escolhê -lo em vez de htmlunit foi a facilidade de configurar:

sudo apt-get install python-qt4

Eu também recomendaria o Selenium. O ótimo recurso é que você pode criar um cliente que abre uma página do navegador que você pode ver o que está acontecendo em cada etapa. Além disso, criar macros para testes automatizados é outro bom recurso. No entanto, se você precisar descartar algumas informações da página da web htmlunit, é melhor que o selênio.

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