Estoy escribiendo una extensión de navegador que necesita obtener información de un sitio existente. El sitio se me muestra en el inspector de Chrome como una colección de archivos JavaScript en la pestaña Fuentes. Afortunadamente, toda la información que necesito se registra a través de console.log desde este sitio web existente. Menos fortuitamente, no conozco una forma de "carga en caliente" en enlaces a estos archivos fuente y, aunque puedo ver los datos en la consola, no puedo obtener los datos directamente en mi extensión donde puedo procesarlos.
La respuesta a esta pregunta sobre el acceso a la salida de la consola funciona para reemplazar console.log dentro del alcance del archivo de mi Main.js para mi extensión y hace que se cree una matriz "console.logs". Pero cualquier evento de console.log que ocurra en los archivos js del sitio aún parece ser predeterminado: probé algunas permutaciones, pero parecen ser solo un registro de vainilla sin posibilidad de capturar datos adicionales.
Supongo que mi problema es uno de alcance. Entonces, ¿cómo podría inyectar este reemplazo de console.log en un alcance más alto de modo que los archivos js del sitio también se vean afectados? De lo contrario, ¿hay otra forma de conectarse a los datos de esta consola, o "intercambiar en caliente" los archivos fuente del sitio con los míos (por ejemplo, reemplazar el texto de los archivos JS por expresiones regulares antes de la ejecución? Lo dudo ...)