Ich möchte die CRX-Datei einer Erweiterung aus dem Webstore herunterladen. Ich verwende Fiddler, um die Netzwerkanforderung zu analysieren, wenn ich eine Erweiterung aus dem Webstore installiere und sie erhalte.
Für die Erweiterung: https://chrome.google.com/webstore/detail/bjclhonkhgkidmlkghlkiffhoikhaajg
lautet der Download-Link beispielsweise:
https://clients2.googleusercontent.com/crx/download/OgAAADQ_Loe5gfVPF2OUaB35tvex-NKlmA8V4K5YlWuvLCknMH7egLLmnMoFuCZePl_idE1GMf8jZC2KbjQqyyLDoDAAxlKa5eDp-z9frOppHWtQsRU3-iGrrrrA/extension_1_7_11.crx
Jetzt frage ich mich , ob es eine universelle Methode zur get .crx einer Verlängerung ist, ist das Problem , wie Google tat Verschlüsselung
bjclhonkhgkidmlkghlkiffhoikhaajg
in
OgAAADQ_Loe5gfVPF2OUaB35tvex-NKlmA8V4K5YlWuvLCknMH7egLLmnMoFuCZePl_idE1GMf8jZC2KbjQqyyLDoDAAxlKa5eDp-z9frOppHWtQsRU3-iGrrrrA
?
Jede Idee wird hilfreich sein.
Antworten:
Für eine meiner Erweiterungen musste ich automatisch andere CRXs herunterladen, wobei ich nur die Erweiterungs-ID kannte. Ich habe dieses Problem gelöst, indem ich die folgende URL geöffnet habe:
Diese Seite leitet Sie an diese
https://clients2.googleusercontent.com/crx/download/
Adresse weiter.Ich erinnere mich noch nicht, wie ich auf diese URL gekommen bin (sie war entweder irgendwo in der Seitenquelle oder ich habe einen Netzwerk-Sniffer verwendet), aber sie funktioniert seit letztem Dezember hervorragend für mich, daher sieht sie zuverlässig aus.
quelle
204 No Content
. Auch nach dem Ersetzen%3D
mit=
und%26
mit&
.204 No Content
auch. Siehe die Antwort mit der Erwähnung von PRODVERSION, dass man funktioniert.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
mit{ID}
der Erweiterungs-ID.Die CRX-Datei selbst kann direkt von heruntergeladen werden
https://clients2.google.com/service/update2/crx?response=redirect&prodversion=[PRODVERSION]&acceptformat=crx2,crx3&x=id%3D[EXTENSIONID]%26uc
(Neu in 2018)
acceptformat=crx2,crx3
weist den Server an, auch mit Erweiterungen im CRX3-Format zu antworten (anstelle von 204 No Content, wenn die Erweiterung nicht als CRX2 verfügbar ist).Wenn die Erweiterung , die Sie verwenden enthält OS-spezifische Module (zB NaCl), dann müssen Sie zusätzliche Parameter hinzufügen (
os
,arch
,nacl_arch
).Die vollständige Logik zum Generieren einer vollständigen CRX-Download-URL finden Sie in der
get_crx_url
Funktion unter https://github.com/Rob--W/crxviewer/blob/master/src/cws_pattern.js .Dies ist Teil der Chrome Extension Source Viewer-Erweiterung, die im Chrome Web Store verfügbar ist: https://chrome.google.com/webstore/detail/chrome-extension-source-v/jifpbeccnghkjeaalbbjmodiffmgedin
Beachten Sie, dass das Öffnen der vorherigen URL in Chrome keinen Download auslöst, da Chrome automatisch Antworten abfängt, deren
Content-Type
Einstellung auf festgelegt istapplication/x-chrome-extension
. Wenn Sie die crx-Datei in einer Chrome-Erweiterung programmgesteuert herunterladen möchten, ändern Sie den MIME-Typ inapplication/octet-stream
(z. B. wie insrc/lib/crx-to-zip.js
).quelle
Es gibt diese Website, um genau das zu tun:
http://chrome-extension-downloader.com/
quelle
Ich habe ein kleines Python-Skript geschrieben, um diesen Prozess zu automatisieren, was @serg @Rob W.
https://gist.github.com/arulrajnet/2424bc1ffc40324f3786
Sie können das auch verwenden.
So müssen Sie verwenden.
quelle
Dies ist eine Low-Tech-Methode, als Fiddler zu verwenden, und mir ist klar, dass dies jetzt drei Jahre alt ist, aber ich schaue immer nach, ob jemand anderes das Problem gelöst hat. Also habe ich jemanden gefunden, der es getan hat, und ich habe seine Lösung nur mehrmals erfolgreich eingesetzt. Ihre Lösung ist eine Erweiterung, die andere Erweiterungen mit dem Namen Give Me CRX herunterladen kann:
https://chrome.google.com/webstore/detail/give-me-crx/acpimoebmfjpfnbhjgdgiacjfebmmmci
quelle
Erstellen Sie ein Lesezeichen und fügen Sie die Javascript-Funktion als Adresse hinzu. Navigieren Sie zu der Chrome-Erweiterung, die Sie herunterladen möchten, und klicken Sie dann auf das Lesezeichen. Der Download sollte beginnen.
Vielen Dank
quelle
location.pathname
anstelle vonlocation.href
. Wenn die URL enthält?lang=en
, schlägt dieses Snippet fehl. 2. Chrome "startet den Download nicht", fordert Sie jedoch auf, die Erweiterung zu installieren.location.href = 'http://clients2.google.com/service/update2/crx?response=redirect&prodversion=42&x=' + encodeURIComponent('uc&id=' + location.pathname.split('/').pop());
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'); })();
Außerdem empfehle ich, diese Website http://crxextractor.com auszuprobieren . Hier können Sie eine Erweiterung über die Chrome Webstore-URL herunterladen und den Quellcode im Browser extrahieren, ohne dass zusätzliche Software erforderlich ist, und alles wird mit ein oder zwei Klicks erledigt.
quelle
Sie können die folgende URL-Vorlage verwenden:
Die PRODVERSION ist die Chrome-Version. (Holen Sie es sich über Einstellungen -> Hilfe -> Über Google Chrome). Beispiel: Version
69.0.3497.100
(Official Build) (64-Bit)Die EXTENSIONID ist die ID für die Erweiterung. Beispiel: Hier ist ein Beispiel-Plugin: https://chrome.google.com/webstore/detail/jetbrains-ide-support/hmhgeddbohgjknpmjagkdomcpobmllji?hl=de die ID lautet
hmhgeddbohgjknpmjagkdomcpobmllji
Die Beispielanforderung zum Herunterladen lautet also https://clients2.google.com/service/update2/crx?response=redirect&prodversion=69.0.3497.100&x=id%3Dhmhgeddbohgjknpmjagkdomcpobmllji%26uc
quelle
Um die Chrome-Erweiterung von einer bestimmten ID herunterzuladen, können Sie sie einfach so verwenden
Die obige ist die Download-URL für die Chrome-Erweiterung. Es gibt auch eine Chrome-Erweiterung, mit der Sie die Chrome-Erweiterung als Zip- oder CRX-Datei herunterladen können. https://chrome.google.com/webstore/detail/crx-extractordownloader/ajkhmmldknmfjnmeedkbkkojgobmljda
In diesem Github-Repo finden Sie auch den Code, wie es gemacht wird
quelle
Keine der manuellen Möglichkeiten in diesem Beitrag funktioniert für mich, daher habe ich nach einer URL gesucht, um die Erweiterung direkt herunterzuladen. Finden Sie dies und funktioniert perfekt für mich.
Sie müssen ### EXTENSION_ID ### durch die Erweiterungs-ID aus dem Chrome-Shop ersetzen. Es ist Teil der URL.
Beispiel für eine Google Translate-Erweiterung:
quelle