特定のIDのCRXファイルをChromeウェブストアからダウンロードするにはどうすればよいですか?


81

Webストアから拡張機能の.crxファイルをダウンロードしたいのですが、Webストアから拡張機能をインストールして取得したときに、フィドラーを使用してネットワーク要求を分析します。
たとえば、拡張機能の場合:https//chrome.google.com/webstore/detail/bjclhonkhgkidmlkghlkiffhoikhaajg
ダウンロードリンクは次のとおりです。

https://clients2.googleusercontent.com/crx/download/OgAAADQ_Loe5gfVPF2OUaB35tvex-NKlmA8V4K5YlWuvLCknMH7egLLmnMoFuCZePl_idE1GMf8jZC2KbjQqyyLDoDAAxlKa5eDp-z9frOp​​pHWtQsRU3-iGrrrrA/extension_1_7_11.crx
GET .crx延長のための普遍的な方法がある場合は今、私は思ったんだけど、問題は、Googleがやった方法です暗号化

bjclhonkhgkidmlkghlkiffhoikhaajg

OgAAADQ_Loe5gfVPF2OUaB35tvex-NKlmA8V4K5YlWuvLCknMH7egLLmnMoFuCZePl_idE1GMf8jZC2KbjQqyyLDoDAAxlKa5eDp-z9frOppHWtQsRU3-iGrrrrA

どんなアイデアも役に立ちます。


2
実際のマッピングがなくても、データベースのどこかに格納されている2つの乱数である可能性があることはわかっています。なぜこれが必要なのですか?サイトからすべての拡張機能を機械的に削り取りたいのですか?
Rup 2011

1
また、GoogleChrome拡張機能である「GiveMeCRX」を使用して、ウェブストアからChrome拡張機能のソース.crxファイルを取得することもできます。PS:私はこの拡張機能を作成して公開しました。拡張リンク:Give Me CRX(Chrome拡張機能)
iAnuj 2012

回答:


30

私の拡張機能の1つでは、拡張機能IDのみを知っている他のCRXを自動的にダウンロードする必要がありました。次のURLを開くことでこれを解決しました:

http://clients2.google.com/service/update2/crx?response=redirect&x=id%3D<EXTENSION_ID_HERE>%26uc%26lang%3Den-US&prod=chrome

このページはあなたをそのhttps://clients2.googleusercontent.com/crx/download/アドレスに転送します。

そのURLをどのようにして思いついたのか(どこかのページソースにあるか、ネットワークスニファを使用したか)はまだ覚えていませんが、昨年12月からうまく機能しているので、信頼できるように見えます。


1
ああ、あなたは「エクステンションギャラリーとウェブストアインスペクター」の開発者ですか?どうもありがとう!
wong2 2011

16
Googleが最近何かを変更したようで、このアプローチは機能しなくなりました(204を返します)。誰が何が変わったのか分かりますか?chrome-extension-downloader.comの作成者は修正したようですが、ドキュメントは更新されていません。
マシュー・ガルトナー2014年

5
動作しなくなりました。取得し204 No Contentます。でも交換した後%3D=%26して&
ダンダスカレスク2016年

8
このURLが機能しなくなったことを確認すると、私も取得し204 No Contentます。PRODVERSIONに言及している回答を参照してください。
i336_ 2016

1
:ここで私はネイティブと非ネイティブ拡張のためにその作品を使用するものだhttps://clients2.google.com/service/update2/crx?response=redirect&os=linux&arch=x86-64&nacl_arch=x86-64&prod=chromiumcrx&prodchannel=unknown&prodversion=49.0.2623.108&x=id%3D{ID}%26uc{ID}拡張IDであること。
damio 2016

113

CRXファイル自体はから直接ダウンロードできます
https://clients2.google.com/service/update2/crx?response=redirect&prodversion=[PRODVERSION]&acceptformat=crx2,crx3&x=id%3D[EXTENSIONID]%26uc

  • 【PRODVERSION]は31.0.1609.0でなければならないクロムのバージョンであり、非常に少なくとも、および
  • [EXTENSIONID]は拡張機能のIDです

(2018年の新 acceptformat=crx2,crx3機能)は、CRX3形式の拡張機能でも応答するようにサーバーに指示します(拡張機能がCRX2として使用できない場合は204 No Contentではありません)。

あなたが使用している拡張子はOS固有のモジュール(例えば塩化ナトリウム)が含まれている場合、あなたは追加のパラメータを追加する必要があります(osarchnacl_arch)。

完全なCRXダウンロードURLを生成する完全なロジックについてはget_crx_urlhttps://github.com/Rob--W/crxviewer/blob/master/src/cws_pattern.jsの関数を参照してください

これはChrome拡張機能の一部であり、Chromeウェブストアで入手できます:https//chrome.google.com/webstore/detail/chrome-extension-source-v/jifpbeccnghkjeaalbbjmodiffmgedin


Chromeはに設定されている応答を自動的にインターセプトするため、Chromeで前のURLを開いてもダウンロードトリガーされないことに注意してください。Chrome拡張機能でcrxファイルをプログラムでダウンロードする場合は、MIMEタイプをに変更します(たとえば、で行ったように)。Content-Typeapplication/x-chrome-extensionapplication/octet-streamsrc/lib/crx-to-zip.js


1
注:一部の拡張機能にはNaClモジュールが含まれており、追加のクエリ文字列パラメーターが必要です。URLの構成については、crxviewer拡張機能のソースコードを参照してください:github.com/Rob--W/crxviewer/commit/…–
Rob W

Chromeは、このURLを開こうとしたときに問題が発生しました。Windowsを使用している場合は、IEで開いて、問題なくダウンロードしてください。
craastad 2013

@craastadChromeはファイルを拡張子として認識するためです。Chrome拡張機能のソースビューア拡張機能をインストールして、Chrome / Operaで拡張機能のソースコードに簡単にアクセスします。
ロブW

インターネットの見知らぬ人、神はあなたを祝福します。これは、このコメントの時点で機能します。私が持っていた古いURLは、すべてではなく、一部のURLでのみ機能していました。D:この1は解決
BBerastegui

これを使用すると、サードパーティのWebサイトや拡張機能を信頼せずにMicrosoft Edge(Chromium)にテーマをインストールしてCRXを取得できます。指定されたURLをアドレスバーに直接パンチするだけで、残りはEdgeが行います。
アシュリー

54

まさにそれを行うためのこのウェブサイトがあります:

http://chrome-extension-downloader.com/


25
...あなたが彼らのサイトからあなたが望んでいたのと同じコードをダウンロードすることを確実に知ることができないことを除いて。
törzsmókus

5
@ inf3rnoどうやって知っていますか?ダウンロードした拡張機能が「機能する」という理由だけで、データを盗んだり、バックグラウンドで子猫を殺したりする可能性もあります。あなたは(チェックサムによって、例えば)CRXファイルの整合性をチェックすることができない限り、あなただけの、Googleのサーバーからダウンロードしなければならない理由だこと
törzsmókus

6
@törzsmókus私はcrxファイルのコードをチェックしました。それが私が知っている方法です。多くの場合。このダウンローダーが常に安全であるという保証はありません。
inf3rno 2015

2
私はこの答えが少し古いことを知っていますが、このサイトがまだ生きている間、それはサードパーティのスクリプトをロードしようとします。使用する前に注意してください。
ジョナサンウォーカー

7

そのプロセスを自動化するための小さなPythonスクリプトを作成しました@ serg @ Rob W

https://gist.github.com/arulrajnet/2424bc1ffc40324f3786

あなたもそれを使うことができます。

python ChromeAppDownloader.py -u https://chrome.google.com/webstore/detail/google-maps/lneaknkopdijkpnocmklfnjbeapigfbh

これはあなたが使用しなければならない方法です。


3

これはフィドラーを使用するよりもローテクな方法であり、これは3年前のことですが、他の誰かが問題を解決したかどうかを常に確認しています。だから私は誰かがやったのを見つけました、そして私はちょうど彼らの解決策を数回うまく使いました。彼らの解決策は、Give MeCRXと呼ばれる他の拡張機能をダウンロードできる拡張機能です。

https://chrome.google.com/webstore/detail/give-me-crx/acpimoebmfjpfnbhjgdgiacjfebmmmci


3

また、このWebサイトhttp://crxextractor.comを試すことをお勧めします。ここでは、ChromeウェブストアのURLで拡張機能をダウンロードし、ブラウザでソースコードを抽出できます。追加のソフトウェアは必要ありません。すべて、1、2回クリックするだけで完了します。


Chromeは、破棄ボタン以外のファイルを保持するオプションを表示せずにダウンロードをブロックします。これを回避する方法は?
エコー

3

以下のURLテンプレートを使用できます。

https://clients2.google.com/service/update2/crx?response=redirect&prodversion=[PRODVERSION]&x=id%3D[EXTENSIONID]%26uc

PRODVERSIONはChromeバージョンです。([設定]-> [ヘルプ]-> [Google Chromeについて]から取得します)。例:バージョン69.0.3497.100(公式ビルド)(64ビット)

EXTENSIONIDは拡張のためのIDです。例:サンプルプラグインは次のとおりです。https://chrome.google.com/webstore/detail/jetbrains-ide-support/hmhgeddbohgjknpmjagkdomcpobmllji?hl = en id ishmhgeddbohgjknpmjagkdomcpobmllji

したがって、ダウンロードのサンプルリクエストはhttps://clients2.google.com/service/update2/crx?response=redirect&prodversion=69.0.3497.100&x=id%3Dhmhgeddbohgjknpmjagkdomcpobmllji%26ucになります。


2

ブックマークを作成し、JavaScript関数をアドレスとして追加します。ダウンロードするChrome拡張機能を参照し、ブックマークをクリックすると、ダウンロードが開始されます。

javascript:(function(){
    var pathname = location.pathname;pathArray = pathname.split("/");   
    location = ("http://clients2.google.com/service/update2/crx?response=redirect&x=id"+"%" + "3D" + pathArray[pathArray.length -1]+"%" + "26uc%" + "26lang%" + "3Den-US&prod=chrome"); })();

ありがとう


1
@adardesign試してみましたか?これは、2つの理由で機能しません。1。のlocation.pathname代わりに使用しますlocation.href。URLにが含まれている場合、?lang=enこのスニペットは失敗します。2. Chromeは「ダウンロードを開始」しませんが、拡張機能をインストールするように求めます。
ロブW

そうです、私はこの質問に次の要点で答えようとしていましたが、同じアイデアがブックマークレットに入れられたこの答えを見ました。いいえ、私はそれを試しませんでした。gistを
adardesign

location.href = 'http://clients2.google.com/service/update2/crx?response=redirect&prodversion=42&x=' + encodeURIComponent('uc&id=' + location.pathname.split('/').pop());
Alf Eaton 2015年

1
これは私のために働きますjavascript:(function(){ location.href = 'https://clients2.google.com/service/update2/crx?response=redirect&prodversion=38.0&x=' + encodeURIComponent('id=' + location.pathname.split('/').pop() + '%26installsource%3Dondemand%26uc'); })();
ヤギ

2

特定のIDからChrome拡張機能をダウンロードするには、次のように使用できます

var currentEXTId = 'bjclhonkhgkidmlkghlkiffhoikhaajg';    
let downloadURL = https://clients2.google.com/service/update2/crx?response=redirect&x=id%3D" + currentEXTId + "%26uc&prodversion=32;

上記はChrome拡張機能のダウンロードURLです。Chrome拡張機能をzipまたはcrxファイルとしてダウンロードするのに役立つChrome拡張機能もあります。https://chrome.google.com/webstore/detail/crx-extractordownloader/ajkhmmldknmfjnmeedkbkkojgobmljda

また、その実行方法のコードは、このGithubリポジトリで入手できます。


1
答えとしてツールやライブラリを投稿するだけではいけません。少なくとも、答え自体で問題をどのように解決するかを示してください
ゾーイ

0

この投稿の手動による方法はどれも私には機能しないので、拡張機能を直接ダウンロードするためのURLを検索しました。これを見つけて、私にぴったりです。

https://clients2.google.com/service/update2/crx?response=redirect&prodversion=49.0&x=id%3D###EXTENSION_ID###%26installsource%3Dondemand%26uc

### EXTENSION_ID ###をChromeショップの拡張IDに置き換える必要があります。URLのその部分。

Google翻訳拡張機能の例:

https://clients2.google.com/service/update2/crx?response=redirect&prodversion=49.0&x=id%3Daapbdbdomjkkjkaonfhkkikfgjllcleb%26installsource%3Dondemand%26uc

0

これはMicrosoftEdgeChromiumで機能します。

https://edge.microsoft.com/extensionwebstorebase/v1/crx?response=redirect&prod=chromiumcrx&prodchannel=&x=id%3D<EXTENSION_ID_HERE>%26installsource%3Dondemand%26uc 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.