これらの拡張機能がどの言語であるかはわかりませんが、HTML、Javascript、またはJSONで記述されていると思います。私が知る限り、それらは.CRXファイルで「圧縮」されています。
Chrome拡張機能のhtml、js、json(またはそれらが使用する言語)を直接変更することは可能ですか?
これらの拡張機能がどの言語であるかはわかりませんが、HTML、Javascript、またはJSONで記述されていると思います。私が知る限り、それらは.CRXファイルで「圧縮」されています。
Chrome拡張機能のhtml、js、json(またはそれらが使用する言語)を直接変更することは可能ですか?
回答:
私はそれをグーグルで検索し、これを見つけました:
Google Chrome拡張機能のファイルタイプはCRXです。基本的には圧縮形式です。したがって、拡張機能、スクリプト、コードの背後にあるものを確認したい場合は、ファイルタイプを「CRX」から「ZIP」に変更するだけです。
ファイルを解凍すると、必要なすべての情報が得られます。このようにして、根性を確認したり、拡張機能を自分で作成したり、自分のニーズに合わせて変更したりする方法を学ぶことができます。
次に、自動的にファイルを作成してCRXに戻すChromeの内部ツールを使用して、ファイルをパックして戻すことができます。それをインストールするには、クリックするだけです。
crx
toに変更しzip
てクリックしても機能しません。unzip
コマンドはさらに上で動作しますcrx
拡張。
インストールされているChrome拡張機能のディレクトリは次のとおりです。
変更する拡張機能のフォルダをコピーします。(拡張機能IDに従って名前が付けられます。拡張機能のIDを見つけるには、に移動しますchrome://extensions/
)。コピーしたら、_metadataフォルダーを削除する必要があります。
からchrome://extensions
でデベロッパーモード選択ロードアンパック延長...とコピーした拡張フォルダを選択することは、これはバージョンによって命名されたサブフォルダが含まれている場合は、マニフェストファイルがある、このバージョンのフォルダを選択し、このファイルには、クロームのために必要です。
変更を加えたら、[再読み込み]を選択し、拡張機能のページを更新して変更を確認します。
Chrome拡張ディレクトリ
マック:
/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/
\Default
拡張機能の場所のパスにあるディレクトリは、拡張機能がインストールされているプロファイルを指しています。Chromeで複数のプロファイルを使用している場合\Default
はデフォルトのプロファイルで\Profile1
あり、これが最初に作成される追加のプロファイルです。
null
です。また、ユーザー名が返されるため、コピーされたパスが機能しません。私はOS Xを使用しています。作業。また、拡張機能と拡張機能IDの間のスラッシュがありません。
署名されたCRXファイルには、ほとんどすべてのunzippersがbarfするヘッダーが含まれています。これは最も簡単な方法ではありませんが、bashコマンドラインから実行する方法を次に示します。
基本的な考え方は、元の署名されていないzipファイルが始まる場所を見つけ、CRXファイルをzipファイルにコピーし、CRXヘッダーを除外することです。
hexdump -C the_extension.crx | more
dd if=the_extension.crx of=the_extension.zip bs=1 skip=0x132
(skipパラメーターには、前のステップで見つけたオフセットを代入します。)これを行うにはもっと簡潔な方法があると私は確信しています。バッシュの専門家、私の答えを改善してください。
0x132
unzip
。それはヘッダーの追加の306バイトについて不平を言いましたが、とにかくそれをしました。
unzip
完全に動作します: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}}}')
いくつかのzipプログラムは、サティッシュのようなトラブルCRXを解凍していることに注意してくださいが説明-このような場合には、7 -ジップを使用してみてください- http://www.7-zip.org/
私は他の回答を読み、他のいくつかのことに注意することが重要だと気づきました:
1.)Macユーザーの場合:[パッケージ化されていない拡張機能を読み込む...]をクリックすると、ライブラリフォルダーはデフォルトで非表示になり、(Macで[非表示のファイルを表示]オプションがオンになっている場合でも)Chromeのファインダーウィンドウに表示されない場合があります。
2.)拡張機能を含むサブフォルダーは、拡張機能のIDにちなんで名付けられたランダムな英数字の文字列です。これは、開発者フラグがtrueに設定されている場合、Chromeの拡張機能ページにあります。(拡張機能ページの右上のチェックボックス)
これで、ChromeはマルチユーザーなのでExtensions
、OSユーザープロファイルの下にネストする必要があります。次に、Chromeユーザープロファイル、最初のChromeユーザーが呼び出されましたProfile 1
、私のExtensions
パスはでしたC:\Users\
username
\AppData\Local\Google\Chrome\User Data\
Profile 1
\Extensions\
。
あなたのものを見つけるためにナビゲートしますchrome://version/
(私about:
は怠惰のうちに使用します)。
に注意してProfile Path
、追加\Extensions\
してください。
これにより、この質問に関するこの情報がさらに最新のものになることを願っています。
シンプルな.zipアーカイブなので、.CRX拡張子のコードを変更することが可能です。拡張機能をダウンロードして、ソースコードを抽出し、変更(テストしてデバッグする)して、パッケージ化して.CRXファイルに戻すことができます。
私は単に.CRXの拡張機能をダウンロードし、ソースコードを抽出するために、このツールをGoogleで検索し、それが私の仕事:http://crxextractor.com
それが行うすべてのことは、.CRXファイル形式を解析し、ソースコードを含む実際の.zipを抽出することです。