No estoy seguro en qué idiomas están esas extensiones, creo que están escritas en Html, Javascript o JSON. Hasta donde yo sé, están "comprimidos" en un archivo .CRX.
¿Es posible modificar directamente el html, js, json de una extensión de Chrome (o cualquier idioma que utilicen)?
google-chrome
alexchenco
fuente
fuente

Respuestas:
Lo busqué en Google y encontré esto:
fuente
crxazipy hacer clic en ella no funcionará. elunzipcomando funcionará incluso en lacrxextensión.Los directorios de extensión de Chrome instalados se enumeran a continuación:
Copie la carpeta de la extensión que desea modificar. (Nombrado según el ID de la extensión, para encontrar el ID de la extensión, vaya a
chrome://extensions/). Una vez copiado, debe eliminar la carpeta _metadata.De
chrome://extensionsen modo de desarrollador seleccione la extensión desempaquetado de carga ... y seleccione la carpeta de extensión copiado, si contiene una subcarpeta esta es nombrado por la versión, seleccione esta carpeta versión que no es un archivo de manifiesto, este archivo es necesario para Chrome.Realice sus cambios, luego seleccione volver a cargar y actualice la página de su extensión para ver sus cambios.
Directorios de extensiones de Chrome
Mac:
Windows 7:
Windows XP:
Ubuntu 14.04:
fuente
\Defaultdirectorio en la ruta de ubicación de la extensión apunta al perfil para el que está instalada la extensión. Si utiliza varios perfiles en Chrome,\Defaultes el perfil predeterminado y\Profile1es el primer perfil adicional creado.nullel nombre de usuario, por lo que la ruta copiada no funciona. Estoy en OS X, pero una buena idea, solo necesita un poco. trabajo. Ah, y también, falta la barra entre Extensiones y la identificación de la extensión.Un archivo CRX firmado tiene un encabezado que hará que la mayoría o todos los descomprimidores se deshagan. Esta no es la forma más fácil de hacerlo, pero aquí se explica cómo hacerlo desde una línea de comandos de bash.
La idea básica es encontrar dónde comienza el archivo zip original sin firmar, luego copiar el archivo CRX a un archivo zip pero excluir el encabezado CRX.
hexdump -C the_extension.crx | moredd if=the_extension.crx of=the_extension.zip bs=1 skip=0x132(Para el parámetro de omisión, sustituya el desplazamiento que encontró en el paso anterior).Estoy seguro de que hay una forma más concisa de hacer esto. Expertos en Bash, mejoren mi respuesta.
fuente
0x132unzip. Se quejó de los 306 bytes adicionales del encabezado, pero lo hizo de todos modos.unzipfunciona perfectamente:warning [YouTubeCenter.crx]: 304 extra bytes at beginning or within zipfile (attempting to process anyway)00000230 63 d5 11 76 bf 9f 50 4b 03 04 14 00 08 08 08 00 |c..v..PK........|webext="Downloads/Extension_v0.1.crx" dd if="$webext" of="${webext%.crx}.zip" bs=1 skip=$(hexdump "$webext" | awk '/50 4b/{a=$1; for(i=2;i<=NF;i++){if($i=="50" && $(i+1)=="4b"){print "0x"substr(a,0,6)i-2;exit}}}')Tenga en cuenta que algunos programas zip tienen problemas para descomprimir un CRX como el descrito por sathish; si este es el caso, intente usar 7-Zip - http://www.7-zip.org/
fuente
Leí las otras respuestas y me pareció importante señalar algunas otras cosas:
1.) Para usuarios de Mac: cuando haces clic en "Cargar extensión descomprimida ...", la carpeta Biblioteca está oculta de forma predeterminada y (incluso si la opción Mostrar archivos ocultos está activada en tu Mac) es posible que no aparezca en la ventana del buscador de Chrome. .
2.) La subcarpeta que contiene la extensión es una cadena alfanumérica aleatoria que lleva el nombre de la ID de la extensión, que se puede encontrar en la página de la extensión de Chrome si la marca de desarrollador está configurada como verdadera. (Casilla de verificación de la parte superior derecha en la página de extensiones)
fuente
(Ya lo dije) Descubrí esto mientras creaba algunos temas de Chrome (que ya no existen ... :-P)
Los temas, extensiones, etc. de Chrome son solo archivos comprimidos. Obtén 7-zip o WinRar para descomprimirlo. Cada extensión / tema tiene un archivo manifest.json. Abra el archivo manifest.json en el bloc de notas. Luego, si conoce la codificación, modifique el código. Habrá algunos otros archivos. Si miras en el archivo de manifiesto, es posible que puedas averiguar para qué sirven. Entonces, puedes cambiar todo ...
fuente
Los archivos .CRX son como archivos .ZIP, simplemente cambie la extensión y haga clic derecho> Extraer archivos y listo.
Una vez que haya extraído los archivos -> modifíquelos y agréguelos a zip y cambie la extensión de nuevo a .crx.
Al revés -> Abrir Chrome -> Configuración -> Extensiones -> Habilitar opciones de desarrollador -> Cargar extensión desempaquetada (carpeta de archivos extraídos modificados) y luego haga clic en paquete de extensión.
Fuente
fuente
Ahora Chrome es multiusuario, por lo que
Extensionsdebe estar anidado en el perfil de usuario del sistema operativo y luego en el perfil de usuario de Chrome. Se llamó a mi primer usuario de ChromeProfile 1, miExtensionsruta fueC:\Users\username\AppData\Local\Google\Chrome\User Data\Profile 1\Extensions\.Para encontrar el tuyo Navega a
chrome://version/(usoabout:por pereza).Observe el
Profile Pathy simplemente adjunte\Extensions\y tendrá el suyo.Espero que esto actualice más esta información sobre esta pregunta.
fuente
Es posible modificar el código de la extensión .CRX, porque es un archivo .zip simple. Puede descargar la extensión, extraer su código fuente, modificarlo (probarlo y depurarlo como está de su lado) y volver a empaquetarlo en el archivo .CRX.
Busqué en Google esta herramienta para simplemente descargar la extensión .CRX y extraer el código fuente y funcionó para mí: http://crxextractor.com
Todo lo que hace es analizar el formato de archivo .CRX y extraer el .zip real que contiene el código fuente.
fuente
Si ha instalado la versión portátil de Chrome o la tiene instalada en un directorio personalizado, las extensiones no estarán disponibles en el directorio al que se hace referencia en las respuestas anteriores.
Intente hacer clic derecho en el acceso directo de Chrome y verifique el directorio "Destino". Desde allí, navegue a un directorio arriba y debería poder ver la
User Datacarpeta y luego puede usar las respuestas mencionadas anteriormentefuente