Jak pobrać plik CRX ze sklepu Chrome web store dla danego identyfikatora?

Chciałbym ściągnąć .plik crx rozszerzenia z webstore, używam fiddler do analizy żądania sieciowego, gdy instaluję rozszerzenie z webstore i mam go.
Na przykład dla rozszerzenia: https://chrome.google.com/webstore/detail/bjclhonkhgkidmlkghlkiffhoikhaajg
link do pobrania jest:

Https://clients2.googleusercontent.com/crx/download/OgAAADQ_Loe5gfVPF2OUaB35tvex-NKlmA8V4K5YlWuvLCknMH7egLLmnMoFuCZePl_idE1GMf8jZC2KbjQqyyLDoDAAxlKa5eDp-z9frOppHWtQsRU3-iGrrrrA/extension_1_7_11.crx
Teraz zastanawiam się, czy istnieje uniwersalna metoda get .crx rozszerzenia, problem polega na tym, jak szyfrowanie Google

bjclhonkhgkidmlkghlkiffhoikhaajg

Do

OgAAADQ_Loe5gfVPF2OUaB35tvex-NKlmA8V4K5YlWuvLCknMH7egLLmnMoFuCZePl_idE1GMf8jZC2KbjQqyyLDoDAAxlKa5eDp-z9frOppHWtQsRU3-iGrrrrA ?

Każdy pomysł będzie pomocny.
Author: Rob W, 2011-08-25

9 answers

Dla jednego z moich rozszerzeń musiałem pobierać inne CRX-y automatycznie znając tylko ID rozszerzenia. Rozwiązałem to, otwierając następujący adres URL:

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

Ta strona przekieruje Cię na ten adres https://clients2.googleusercontent.com/crx/download/.

Nie pamiętam już, jak wymyśliłem ten adres URL( albo był gdzieś w źródle strony, albo użyłem network sniffer), ale działa świetnie dla mnie od grudnia ubiegłego roku, więc wygląda wiarygodnie.

 28
Author: serg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-08-25 04:35:33

Sam plik CRX można pobrać bezpośrednio z
https://clients2.google.com/service/update2/crx?response=redirect&prodversion=[PRODVERSION]&acceptformat=crx2,crx3&x=id%3D[EXTENSIONID]%26uc

  • [PRODVERSION] jest wersją Chrome, która musi być 31.0.1609.0 przynajmniej i
  • [EXTENSIONID] jest ID rozszerzenia

(nowość w 2018) acceptformat=crx2,crx3 poleca serwerowi również odpowiadanie rozszerzeniami w formacie CRX3 (zamiast 204 No Content, gdy rozszerzenie nie jest dostępne jako CRX2).

Jeśli używasz rozszerzenia zawiera moduły specyficzne dla systemu operacyjnego (np.(os, arch, nacl_arch).

Pełna logika generowania pełnego adresu URL do pobrania CRX znajduje się w funkcji get_crx_url W https://github.com/Rob--W/crxviewer/blob/master/src/cws_pattern.js .

Jest to część rozszerzenia przeglądarki Chrome extension Source, dostępnego w Chrome Web Store: https://chrome.google.com/webstore/detail/chrome-extension-source-v/jifpbeccnghkjeaalbbjmodiffmgedin


Zwróć uwagę, że otwarcie poprzedniego adresu URL w Chrome spowoduje , a nie uruchomienie pobierania, ponieważ Chrome automatycznie przechwytuje odpowiedzi, których Content-Type jest ustawione na application/x-chrome-extension. Jeśli chcesz programowo pobrać plik crx w rozszerzeniu Chrome, Zmień typ MIME na application/octet-stream (np. jak to zrobiono w src/lib/crx-to-zip.js).

 75
Author: Rob W,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-09-28 11:51:46

Jest ta strona tylko po to, aby to zrobić:

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

 44
Author: John Kentucky,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-03-05 07:49:21

Napisałem mały skrypt Pythona, aby zautomatyzować ten proces co @ serg @ Rob w

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

Możesz też tego użyć.
python ChromeAppDownloader.py -u https://chrome.google.com/webstore/detail/google-maps/lneaknkopdijkpnocmklfnjbeapigfbh

To jest jak trzeba używać.

 3
Author: arulraj.net,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-26 13:43:40

Utwórz zakładkę Dodaj funkcję javascript jako adres. Przejdź do rozszerzenia chrome, które chcesz pobrać, a następnie kliknij zakładkę i powinno rozpocząć pobieranie.

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"); })();

Thanks

 2
Author: Zalmy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-04-27 16:57:13

Jest to mniej zaawansowany technologicznie sposób na to, niż użycie fiddlera. zdaję sobie sprawę, że to już trzy lata, ale zawsze sprawdzam, czy ktoś inny rozwiązał problem. Więc znalazłem kogoś, i po prostu korzystałem z ich rozwiązania kilka razy z powodzeniem. Ich rozwiązaniem jest rozszerzenie, które może pobierać inne rozszerzenia, o nazwie Give Me CRX:

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

 2
Author: Bewc,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-04 21:46:19

Również polecam wypróbować tę stronę http://crxextractor.com . Tutaj możesz pobrać rozszerzenie za pomocą adresu URL Chrome Webstore i wyodrębnić jego kod źródłowy w przeglądarce, bez dodatkowego oprogramowania, a wszystko odbywa się jednym kliknięciem lub dwoma.

 2
Author: Vladimir Ignatyev,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-01-25 22:53:41

Żaden z ręcznych sposobów w tym poście nie działa dla mnie, więc szukałem adresu URL, aby pobrać bezpośrednie rozszerzenie. Znajdź to i działa idealnie dla mnie.

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

Należy zastąpić ## # EXTENSION_ID## # ID rozszerzenia ze sklepu chrome. Jest częścią adresu URL.

Przykład Rozszerzenia Google Translate:

https://clients2.google.com/service/update2/crx?response=redirect&prodversion=49.0&x=id%3Daapbdbdomjkkjkaonfhkkikfgjllcleb%26installsource%3Dondemand%26uc
 0
Author: Schmidko,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-07 18:32:37

Możesz użyć poniższego szablonu URL,

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

PRODVERSION jest wersją Chrome. (pobierz go z ustawień - > Pomoc - > O Google Chrome). Ex: Version 69.0.3497.100 (Official Build) (64-bit)

EXTENSIONID jest identyfikatorem rozszerzenia. Ex: oto przykładowa wtyczka, https://chrome.google.com/webstore/detail/jetbrains-ide-support/hmhgeddbohgjknpmjagkdomcpobmllji?hl=en{[13] id to hmhgeddbohgjknpmjagkdomcpobmllji

Więc przykładowe żądanie do pobrania będzie https://clients2.google.com/service/update2/crx?response=redirect&prodversion=69.0.3497.100&x=id%3Dhmhgeddbohgjknpmjagkdomcpobmllji%26uc

 0
Author: prime,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-09-20 08:39:31