¿Es posible capturar una captura de pantalla de una ventana abierta usando el depurador remoto Chrome Development Tools?¿Captura una captura de pantalla de Chrome con las Herramientas para desarrolladores de Chrome?
Por ejemplo, estoy conectando al puerto de depuración remota y tengo este código que aparece una ventana vacía:
private void sendWindowPop(int width, int height) throws
IOException {
hsc.send("{\"method\": \"Runtime.evaluate\", \"id\": "
+ hsc.nextInt()
+ ", \"params\": {"
+ "\"expression\":
\"window.open('about:blank','name','toolbar=0,scrollbars=0,"
+ "location=0,status=0,menubar=0,resizable=0,width="
+ width
+ ",height="
+ height
+ "');\""
+ "}}");
(HSC es mi conexión con el depurador en http://localhost:9222)
entonces, me carga mi URL de destino con esto:
private void loadPage(String uriString) throws IOException {
hsc.send("{\"method\": \"Page.open\", \"id\": " +
hsc.nextInt() + ", \"params\": {\"url\": \"" + uriString + "\"}}");
hsc.waitFor(ChromeNotifications.PAGE_LOADEVENTFIRED, DEFAULT_TIMEOUT_MILLIS);
}
el código anterior funciona bien, y primero aparece una ventana y luego carga el URL. Idealmente, lo siguiente que me gustaría hacer es tomar una captura de pantalla de la página web cargada. En este momento, estas ventanas del navegador pop en un escritorio virtual Xvfb, y puedo usar herramienta de importación de ImageMagick para agarrar una captura de pantalla de la ventana de destino, pero sólo si es en el primer plano .
Esto es un problema, ya que esta aplicación está diseñada para ejecutarse en en paralelo con varias ventanas que aparecen en el escritorio virtual. Cualquier ventana que se superponga a mi ventana de destino me dará una captura de pantalla negra , ya que Xfvb solo muestra lo que está visible.
También busqué en la referencia de API, chrome.tabs.captureVisibleTab. No hay suerte allí, no captura lo que no es visible.
¿Hay alguna manera, usando el depurador remoto, de capturar una captura de pantalla de una ventana abierta ?
(con fines de referencia, mi mando ImageMagick para la importación es este)
DISPLAY=:0.0 import -window "Google - Chromium" screenshot.png
Cuando abro la URL http://www.google.com en mi navegador de cromo utilizando LoadPage() anterior. Funciona muy bien siempre que la ventana "Google - Chromium" que aparece no esté obstruida y tenga foco. Coloca otra ventana sobre una parte, y obtengo una gran área negra que no fue renderizada.
Gracias!
El enlace está muerto :(¿Cómo accedes/creas el objeto 'Página'? – user2561747
Hola, parece que esa rama ya no existe echar un vistazo a https://github.com/TeamMentor/TM_4_0_Design/blob/94612a699aa03565bea6c045400bccd1cc68dd76/QA/API/QA-TM_4_0_Design.coffee#L56 y https://github.com/TeamMentor/TM_4_0_Design /blob/94612a699aa03565bea6c045400bccd1cc68dd76/QA/tests/help-pages.coffee#L40 –
¿Hay algo útil aquí para alguien que solo quiera pegar un comando en el panel de la consola o presionar una tecla de acceso directo? – Pysis