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)?

92
demandé sur Vihung 2010-02-12 10:00:57

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.

81
répondu sathish 2017-02-28 17:47:12

Les répertoires D'extension Chrome installés sont listés ci-dessous:

  1. 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.

  2. 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.

  3. 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/
106
répondu JDavis 2017-02-28 14:59:58

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.

  1. hexdump -C the_extension.crx | more
  2. 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.
  3. 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.)
  4. Maintenant décompressez le.zip que vous venez de créer.
  5. 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.

42
répondu sowbug 2010-12-20 20:38:11

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/

9
répondu Arne Roomann-Kurrik 2010-02-12 21:27:27

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)

2
répondu sdailey 2013-01-28 02:12:27

(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...

2
répondu Anonymous 2014-04-14 18:22:05

.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.

Source

1
répondu Mrinvicto 2014-08-12 07:03:34

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.

1
répondu osearth 2016-03-19 12:21:41

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

0
répondu Sathya 2011-11-28 09:04:40

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.

0
répondu Vladimir Ignatyev 2016-08-20 16:50:50