Как загрузить CRX-файл из интернет-магазина Chrome для данного идентификатора?
Я хотел бы скачать .crx файл расширения из webstore, я использую fiddler для анализа сетевого запроса, когда я устанавливаю расширение из webstore и получил его.
Например, для расширения: https://chrome.google.com/webstore/detail/bjclhonkhgkidmlkghlkiffhoikhaajg
ссылка на скачивание:
https://clients2.googleusercontent.com/crx/download/OgAAADQ_Loe5gfVPF2OUaB35tvex-NKlmA8V4K5YlWuvLCknMH7egLLmnMoFuCZePl_idE1GMf8jZC2KbjQqyyLDoDAAxlKa5eDp-z9frOppHWtQsRU3-iGrrrrA/extension_1_7_11.crx
Теперь мне интересно, есть ли универсальный метод для get .crx расширения, проблема в том, как Google encryption
bjclhonkhgkidmlkghlkiffhoikhaajg
на
OgAAADQ_Loe5gfVPF2OUaB35tvex-NKlmA8V4K5YlWuvLCknMH7egLLmnMoFuCZePl_idE1GMf8jZC2KbjQqyyLDoDAAxlKa5eDp-z9frOppHWtQsRU3-iGrrrrA ?
любая идея будет полезна.
9 ответов:
для одного из моих расширений мне пришлось автоматически загружать другие CRXs, зная только идентификатор расширения. Я решил эту проблему, открыв следующий 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 (он был либо в источнике страницы где-то, либо я использовал сетевой сниффер), но он отлично работает для меня с прошлого декабря, поэтому он выглядит надежным.
сам CRX-файл можно загрузить непосредственно из
https://clients2.google.com/service/update2/crx?response=redirect&prodversion=[PRODVERSION]&acceptformat=crx2,crx3&x=id%3D[EXTENSIONID]%26uc
- [PRODVERSION] - это версия Chrome, которая должна быть 31.0.1609.0 по крайней мере и
- [EXTENSIONID] - это идентификатор расширения
(новый в 2018 году)
acceptformat=crx2,crx3указывает серверу также отвечать с расширениями в формат CRX3 (вместо 204 нет контента, когда расширение недоступно как CRX2).если расширение, которое вы используете, содержит модули, специфичные для ОС (например, NaCl), то вам нужно добавить дополнительные параметры (
os,arch,nacl_arch).для полной логики создания полного URL-адреса загрузки CRX см.
get_crx_urlфункция в https://github.com/Rob--W/crxviewer/blob/master/src/cws_pattern.js.это часть расширения Chrome Extension Source Viewer, доступного в интернет-магазине Chrome: https://chrome.google.com/webstore/detail/chrome-extension-source-v/jifpbeccnghkjeaalbbjmodiffmgedin
обратите внимание, что открытие предыдущего URL в Chrome будет не запуск загрузки, потому что Chrome автоматически перехватывает ответы, чьи
Content-Typeустановлено значениеapplication/x-chrome-extension. Если вы хотите программно загрузить файл crx в расширение Chrome, измените тип MIME наapplication/octet-stream(например, как это сделано вsrc/lib/crx-to-zip.js).
Я написал небольшой скрипт python для автоматизации этого процесса, что @serg @Rob W
https://gist.github.com/arulrajnet/2424bc1ffc40324f3786
вы можете использовать это также.
python ChromeAppDownloader.py -u https://chrome.google.com/webstore/detail/google-maps/lneaknkopdijkpnocmklfnjbeapigfbhвот как вы должны использовать.
создать закладку добавить функцию 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"); })();спасибо
Это более низкотехнологичный способ сделать это, чем использовать fiddler, и я понимаю, что это уже три года, но я всегда смотрю, чтобы увидеть, если кто-то другой решил проблему. Поэтому я нашел кого-то, и я просто использовал их решение несколько раз успешно. Их решение-это расширение, которое может загружать другие расширения, называемые Give Me CRX:
https://chrome.google.com/webstore/detail/give-me-crx/acpimoebmfjpfnbhjgdgiacjfebmmmci
кроме того, я рекомендую попробовать этот сайт http://crxextractor.com. Здесь вы можете скачать расширение по его URL-адресу Chrome Webstore и извлечь его исходный код в браузере, не требуется дополнительное программное обеспечение, и все делается в один или два клика.
ни один из способов вручную в этом сообщении не работает для меня, поэтому я искал URL-адрес для загрузки расширения direct. Найти это и работает идеально подходит для меня.
https://clients2.google.com/service/update2/crx?response=redirect&prodversion=49.0&x=id%3D###EXTENSION_ID###%26installsource%3Dondemand%26ucвы должны заменить ## # EXTENSION_ID### на идентификатор расширения из магазина chrome. Его часть URL-адреса.
Пример Расширения Google Translate:
https://clients2.google.com/service/update2/crx?response=redirect&prodversion=49.0&x=id%3Daapbdbdomjkkjkaonfhkkikfgjllcleb%26installsource%3Dondemand%26uc
вы можете использовать шаблон URL ниже,
https://clients2.google.com/service/update2/crx?response=redirect&prodversion=[PRODVERSION]&x=id%3D[EXTENSIONID]%26ucThe PRODVERSION это версия Chrome. (получить его из настроек - > справка - > о Google Chrome). Пример: Версия
69.0.3497.100(официальная сборка) (64-бит)The EXTENSIONID - это идентификатор расширения. Пример: Вот пример плагина, https://chrome.google.com/webstore/detail/jetbrains-ide-support/hmhgeddbohgjknpmjagkdomcpobmllji?hl=en идентификатор есть
hmhgeddbohgjknpmjagkdomcpobmlljiТак запрос образца для загрузки будет https://clients2.google.com/service/update2/crx?response=redirect&prodversion=69.0.3497.100&x=id%3Dhmhgeddbohgjknpmjagkdomcpobmllji%26uc
Comments