Comment modifier directement un fichier D'Extension Google Chrome? (.CRX)
Je ne suis pas sûr dans quelles langues ces extensions sont, je pense que les sont écrites en Html, Javascript ou JSON. Pour autant que je sache, ils sont "compressés" dans un .Fichier CRX.
Est - il possible de modifier directement le html, js, json d'une Extension Chrome (ou n'importe quelle langue qu'ils utilisent)?
10 réponses
Je l'ai cherché dans Google et j'ai trouvé ceci:
Le type de fichier D'Extension Google Chrome est CRX. C'est essentiellement un format de compression. Donc, si vous voulez voir ce qui se cache derrière une extension, les scripts et le code, changez simplement le type de fichier de "CRX" en "ZIP" .
Décompressez le fichier et vous obtiendrez toutes les informations dont vous avez besoin. De cette façon, vous pouvez voir les tripes, apprendre à écrire une extension vous-même, ou le modifier pour vos propres besoins.
Ensuite, vous pouvez l'emballer avec les outils internes de Chrome qui créent automatiquement le fichier dans CRX. L'installation nécessite juste un clic.
Les répertoires D'extension Chrome installés sont listés ci-dessous:
Copier le dossier de l'extension que vous souhaitez modifier. (Nommé en fonction de l'ID de l'extension, pour trouver l'ID de l'extension, allez à
chrome://extensions/
). Une fois copié, vous devez supprimer le dossier _metadata.Depuis
chrome://extensions
dans Mode développeur sélectionnez charger l'extension décompressée...{[16] } et sélectionnez votre dossier d'extension copié, s'il contient un sous-dossier nommé par la version, sélectionnez ce dossier de version où il y a un fichier manifeste, ce fichier est nécessaire pour Chrome.Apportez vos modifications, puis sélectionnez recharger et actualiser la page de votre extension de voir vos modifications.
extension Chrome répertoires
Mac:
/Users/username/Library/Application Support/Google/Chrome/Default/Extensions
Windows 7:
C:\Users\username\AppData\Local\Google\Chrome\User Data\Default\Extensions
Windows XP:
C:\Documents and Settings\YourUserName\Local Settings\Application Data\Google\Chrome\User Data\Default
Ubuntu 14.04:
~/.config/google-chrome/Default/Extensions/
Un fichier CRX signé a un en-tête qui fera barf la plupart/tous les décompresseurs. Ce n'est pas la façon la plus simple de s'y prendre, Mais voici comment le faire à partir d'une ligne de commande bash.
L'idée de base est de trouver où commence le fichier zip original non signé, puis de copier le fichier CRX dans un fichier zip mais d'exclure l'en-tête CRX.
hexdump -C the_extension.crx | more
- regardez dans la sortie pour le début du fichier zip, qui sont les octets ASCII "PK". Dans l'échantillon que j'ai essayé, le PK était au décalage 0x132. (De en lisant la spécification CRX, je pense que ce nombre variera d'un fichier à l'autre en raison de différentes longueurs de signature.) Ce nombre est ce que nous utiliserons dans l'étape suivante.
-
dd if=the_extension.crx of=the_extension.zip bs=1 skip=0x132
(pour le paramètre skip, remplacez le décalage que vous avez trouvé à l'étape précédente.) - Maintenant décompressez le.zip que vous venez de créer.
- manipulez les fichiers dans le répertoire décompressé, puis installez l'extension unsigned/unpacked dans votre installation Chrome, ou réemballez-la comme vous le feriez pour n'importe quel autre Extension Chrome.
Je suis sûr qu'il existe un moyen plus concis de le faire. Experts Bash, s " il Vous Plaît améliorer ma réponse.
Notez que certains programmes zip ont du mal à décompresser un CRX comme Sathish décrit - si c'est le cas, essayez d'utiliser 7-Zip - http://www.7-zip.org/
J'ai lu les autres réponses et j'ai trouvé important de noter quelques autres choses:
1.) Pour les utilisateurs Mac: lorsque vous cliquez sur " Charger l'extension déballée...", le dossier de la Bibliothèque est par défaut caché et (même si L'option Afficher les fichiers cachés est activée sur votre Mac) il pourrait ne pas apparaître dans la fenêtre du finder de Chrome.
2.) Le sous-dossier contenant l'extension est une chaîne alphanumérique aléatoire nommée D'après L'ID de l'extension, qui peut être trouvé sur la page d'extension de Chrome si développeur indicateur est défini sur true. (Case à cocher en haut à droite sur la page extensions)
(déjà dit) j'ai découvert cela en faisant quelques thèmes Chrome (qui sont partis depuis longtemps maintenant... :- P)
Thèmes Chrome, extensions, etc. sont juste des fichiers compressés. Get 7-zip ou WinRar pour le décompresser. Chaque extension / thème a un manifeste.fichier json. Ouvrir le manifeste.fichier json dans le bloc-notes. Ensuite, si vous connaissez le codage, modifiez le code. Il y aura quelques autres fichiers. Si vous regardez dans le fichier manifeste, vous pourriez être en mesure de comprendre à quoi servent les. Ensuite, vous pouvez changer tout...
.Les fichiers CRX sont comme .Fichiers ZIP, il suffit de changer l'extension et faites un clic droit > extraire les fichiers et vous avez terminé.
Une fois que vous avez extrait les fichiers - > modifiez-les et ajoutez-les à zip et modifiez l'extension vers .crx.
Dans l'autre sens - > ouvrir Chrome - > Paramètres - > Extensions - > activer les options du développeur - > charger l'Extension décompressée (dossier fichiers extraits modifiés), puis cliquez sur pack extension.
Maintenant, Chrome est multi-utilisateur, donc Extensions
devrait être imbriqué sous le profil utilisateur du système d'exploitation, puis le profil utilisateur Chrome, mon premier utilisateur Chrome a été appelé Profile 1
, mon chemin Extensions
était C:\Users\
username
\AppData\Local\Google\Chrome\User Data\
Profile 1
\Extensions\
.
Pour trouver le vôtre, naviguez vers chrome://version/
(j'utilise about:
par paresse).
Notez le Profile Path
et ajoutez simplement \Extensions\
et vous avez le vôtre.
Espérons que cela apporte cette information sur cette question à jour plus.
Si vous avez installé la version Portable de Chrome ou si vous l'avez installée dans un répertoire personnalisé, les extensions ne seront pas disponibles dans le répertoire référencé dans les réponses ci-dessus.
Essayez un clic droit sur le raccourci de Chrome et vérifiez le répertoire "cible". De là, accédez à un répertoire ci-dessus et vous devriez pouvoir voir le dossier User Data
et ensuite utiliser les réponses mentionnées ci-dessus
Il est possible de modifier le code de .Extension CRX, parce que c'est un simple .archive zip. Vous pouvez télécharger l'extension, extraire son code source, le modifier (le tester et le déboguer car il est de votre côté), et le remettre en paquet .Fichier CRX.
J'ai googlé cet outil pour simplement télécharger .Extension CRX et extraire le code source et cela a fonctionné pour moi: http://crxextractor.com
Tout ce qu'il fait est analysé .Format de fichier CRX et extraits réels .zip contenant le code source.