selenium web-scraping scrapy phantomjs casperjs

selenium - Navegador sin cabeza y raspado-soluciones



web-scraping scrapy (3)

Si Ruby es lo tuyo, también puedes probar:

Además, la gema Nokogiri se puede utilizar para raspar:

hay un libro dedicado sobre cómo utilizar nokogiri para raspar mediante la publicación de packt

Estoy tratando de poner una lista de posibles soluciones para trajes de prueba automáticos de navegador y plataformas de navegador sin cabeza capaces de raspar.

EXAMINADOR DE PRUEBAS / RASTRES:

  • Selenium : buque insignia políglota en la automatización del navegador, enlaces para Python, Ruby, JavaScript, C #, Haskell y más, IDE para Firefox (como extensión) para una implementación de prueba más rápida. Puede actuar como un servidor y tiene un montón de características.

JAVASCRIPT

  • PhantomJS : JavaScript , pruebas sin cabeza con captura de pantalla y automatización, utiliza Webkit . A partir de la versión 1.8, se implementa la API WebDriver de Selenium, por lo que puede usar cualquier enlace de WebDriver y las pruebas serán compatibles con Selenium
  • SlimerJS - similar a PhantomJS, usa Gecko (Firefox) en lugar de WebKit
  • CasperJS : JavaScript , basado en PhantomJS y SlimerJS, tiene características adicionales
  • Ghost Driver - Implementación de JavaScript del WebDriver Wire Protocol para PhantomJS .
  • Nuevo PhantomCSS - Pruebas de regresión CSS. Un módulo CasperJS para automatizar las pruebas de regresión visual con PhantomJS y Resemble.js.
  • Nuevo WebdriverCSS - complemento para Webdriver.io para automatizar las pruebas de regresión visual
  • nuevo PhantomFlow - Describe y visualiza los flujos de usuarios a través de pruebas. Un enfoque experimental para la prueba de interfaz de usuario web.
  • new trifleJS : conecta la API de PhantomJS para usar el motor de Internet Explorer.
  • nuevo IDE CasperJS (comercial)

NODO.JS

  • Node-phantom : cierra la brecha entre PhantomJS y node.js
  • WebDriverJs - Selenium WebDriver enlaces para node.js por Selenium Team
  • WD.js : módulo de nodo para WebDriver / Selenium 2
  • yiewd - WD.js wrapper usando los últimos generadores Harmony! Deshazte de la pirámide de devolución de llamada con rendimiento.
  • ZombieJs : pruebas de apilamiento completo sin cabeza increíblemente rápidas usando node.js
  • NightwatchJs : solución de prueba basada en Node JS que utiliza Selenium Webdriver
  • Chimera - Chimera: puede hacer todo lo que hace phantomJS, pero en un entorno JS completo
  • Dalek.js - Dalek.js automatizadas en Dalek.js navegadores con JavaScript a través de Selenium Webdriver
  • Webdriver.io : mejor implementación de los enlaces de WebDriver con más de 50 acciones predefinidas
  • Nightmare - Puente de electrones con una API de alto nivel.
  • jsdom - Adaptado a raspar web. Un DOM muy ligero implementado en Node.js, soporta páginas con javascript.

RASCADO WEB / MINERIA

  • Scrapy : Python , principalmente un raspador / minero: rápido, bien documentado y puede vincularse con Django Dynamic Scraper para implementaciones de minería de datos agradables, o Scrapy Cloud para implementación de PaaS (servidor sin servidor), funciona en una terminal o en un servidor de proceso independiente. , se puede usar con apio , construido sobre torcido
  • Snailer - módulo node.js , aún no probado.
  • Node-Crawler - módulo node.js , aún no probado.

Herramientas en linea

  • Nuevo cliente HTTP en línea - respuesta SO dedicada
  • CasperBox muerto - Ejecutar scripts CasperJS en línea

ENLACES RELACIONADOS Y RECURSOS

Preguntas:

  • ¿Alguna solución de Node.js pura o Nodejs a PhanthomJS / CasperJS que realmente funcione y esté documentada?

Respuesta: Quimera parece ir en esa dirección, pago Chimera

  • ¿Otras soluciones capaces de inyectar JavaScript más fácilmente que el Selenium?

  • ¿Conoces alguna solución de rubí puro?

Respuesta: Verifique la lista creada por rjk con soluciones basadas en ruby

  • ¿Conoces alguna tecnología o solución relacionada?

¡Siéntase libre de editar esta pregunta y agregar contenido como desee! ¡Gracias por sus aportaciones!


Un tipo de Selenium basado en JS es Dalek.js . No solo tiene como objetivo realizar pruebas frontales automatizadas, sino que también puede realizar capturas de pantalla con él. Tiene webdrivers para todos los navegadores importantes. Desafortunadamente, vale la pena mejorar esos webdrivers (solo para no decir "buggy" a Firefox).


trifleJS es como phantomjs pero basado en IE