Pregunta

¿Cuál es la mejor solución para tomar una instantánea programática de una página web?

La situación es esta: me gustaría rastrear un montón de páginas web y tomar instantáneas en miniatura de ellas periódicamente, digamos una vez cada pocos meses, sin tener que ir manualmente a cada una. También me gustaría poder tomar instantáneas jpg / png de sitios web que podrían ser completamente Flash / Flex, por lo que tendría que esperar hasta que se cargara para tomar la instantánea de alguna manera.

Sería bueno si no hubiera límite en la cantidad de miniaturas que podría generar (dentro de lo razonable, digamos 1000 por día).

¿Alguna idea de cómo hacer esto en Ruby? Parece bastante duro.

Navegadores para hacer esto en: Safari o Firefox, preferiblemente Safari.

Muchas gracias.

¿Fue útil?

Solución

Esto realmente depende de su sistema operativo. Lo que necesita es una forma de conectarse a un navegador web y guardarlo en una imagen.

Si está en una Mac, me imagino que su mejor opción sería utilizar MacRuby (o RubyCocoa , aunque creo que esto será obsoleto en el futuro cercano) y luego usar el WebKit marco para cargar la página y representarla como una imagen.

Esto es definitivamente posible, para inspirarte, puedes mirar el Paparazzi! y proyectos webkit2png .

Otra opción, que no depende del sistema operativo, podría ser utilizar la BrowserShots API .

Otros consejos

No hay una biblioteca integrada en Ruby para representar una página web.

como lo ve .... ¿es decir? Firefox? ¿ópera? ¿Uno de los innumerables motores de webkit?

si solo fuera posible automatizar http://browsershots.org :)

Use selenium-rc, viene con capacidades de instantánea.

Con jruby puede usar la biblioteca del navegador de SWT.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top