google - ¿Cómo puedo volcar todo el DOM web en su estado actual en Chrome?
dev tools google (3)
Solución de línea de comandos
Esto es fácil de hacer con las nuevas versiones de Chrome:
google-chrome --headless --dump-dom ''http://www.yahoo.com''
(Es posible que el OP no haya estado buscando una solución de línea de comandos, pero este resultado de búsqueda aparece alto cuando se busca, por lo que otros pueden encontrarlo útil)
Respuesta original 2017
Mi forma favorita de hacer esto es:
docker run -it --rm --name chrome --shm-size=1024m --cap-add=SYS_ADMIN --entrypoint=/usr/bin/google-chrome-unstable yukinying/chrome-headless-browser --headless --disable-gpu --dump-dom https://www.facebook.com
Si no está familiarizado con el funcionamiento de Docker, sea paciente: la primera vez será lenta, pero las invocaciones posteriores serán rápidas.
Otra información
Probado en
Ubuntu 16
Linux intel-nuc 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Versión Docker:
Docker version 1.10.3, build 20f81dd
Mac OS X Sierra
Darwin MacBook-Pro.local 16.7.0 Darwin Kernel Version 16.7.0: Thu Jun 15 17:36:27 PDT 2017; root:xnu-3789.70.16~2/RELEASE_X86_64 x86_64 i386 MacBookPro14,3 Darwin
Versión Docker:
Docker version 17.06.1-ce, build 874a737
Si instala tidy
también puede sangrar el HTML.
Quiero volcar el DOM actual en un archivo y poder verlo sin conexión. Esencialmente, tengo una versión desactualizada de una página que me gustaría mantener para comparar. Tan pronto como cierre mi navegador, lo perderé, así que me gustaría guardar el DOM exactamente como está.
Ya hay una respuesta para hacer esto en Firefox, pero ¿cómo lo hago en Chrome?
Actualmente estoy usando la versión 53.0.2785.113 m de Chrome. Las otras respuestas ya no parecen ser válidas. Para copiar correctamente todos los elementos secundarios / descendientes, el usuario ahora tiene que hacer clic derecho en <html>
luego hacer clic en "Expandir todo" antes de copiar. De otra manera no copiarás recursivamente todos los elementos. Un Ctrl + C normal copiará todo lo que se haya expandido <html>
.
Con el Inspector web (F12), vaya a la pestaña Elementos, haga clic derecho en la etiqueta <html>
en su código y seleccione ''Copiar como HTML''. Luego pégalo en un nuevo archivo y guárdalo.