如何从Chrome网上应用店下载特定ID的CRX文件?

won*_*ng2 68 google-chrome download google-chrome-extension chrome-web-store

我想从webstore下载扩展名的.crx文件,当我从webstore安装扩展程序时,我使用fiddler来分析网络请求.
例如,对于扩展程序: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
现在我不知道是否有一个通用的方法得到的.crx扩展的,问题是如何做谷歌加密

bjclhonkhgkidmlkghlkiffhoikhaajg

OgAAADQ_Loe5gfVPF2OUaB35tvex-NKlmA8V4K5YlWuvLCknMH7egLLmnMoFuCZePl_idE1GMf8jZC2KbjQqyyLDoDAAxlKa5eDp-z9frOppHWtQsRU3-iGrrrrA

任何想法都会有所帮助.

Rob*_*b W 89

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]是扩展程序的ID

(2018年新增) acceptformat=crx2,crx3指示服务器还响应CRX3格式的扩展(当扩展名不可用作CRX2时,而不是204 No Content).

如果您使用的扩展包含操作系统特定的模块(如氯化钠),那么你必须添加额外的参数(os,arch,nacl_arch).

有关生成完整CRX下载URL的完整逻辑,请参阅https://github.com/Rob--W/crxviewer/blob/master/src/cws_pattern.js中get_crx_url函数.

这是Chrome网上应用店中提供的Chrome扩展程序来源查看器扩展程序的一部分:https://chrome.google.com/webstore/detail/chrome-extension-source-v/jifpbeccnghkjeaalbbjmodiffmgedin


请注意,在Chrome中打开上一个网址不会触发下载,因为Chrome会自动拦截Content-Type设置为的响应application/x-chrome-extension.如果您想以编程方式在Chrome扩展程序中下载crx文件,请将MIME类型更改为application/octet-stream(例如,完成后src/lib/crx-to-zip.js).

  • 对我有用的示例网址:https://clients2.google.com/service/update2/crx?response=redirect&prodversion=95.0.4638.54&acceptformat=crx2,crx3&x=id%3Dpnlccmojcmeohlpggmfnbbiapkmbliob%26uc (3认同)

Joh*_*cky 48

这个网站就是这样做的:

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

  • ...除非你无法确定从他们想要的网站下载相同的代码. (18认同)
  • @törzsmókus我检查了crx文件中的代码,这就是我所知道的.OFC.无法保证此下载器始终安全. (5认同)
  • @ inf3rno你怎么知道的?只是因为下载的扩展程序"适用于您",它也可能会窃取您的数据或在后台杀死您的小猫.这就是为什么你应该只从谷歌服务器下载,除非你可以检查crx文件的完整性(例如通过校验和) (4认同)
  • 我知道这个答案有点旧,但是当这个站点仍然存在时 - 它会尝试加载第三方脚本。使用前请务必注意。 (2认同)

ser*_*erg 28

对于我的一个扩展,我必须自动下载其他CRX,只知道扩展ID.我通过打开以下网址解决了这个问题:

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

此页面将转发您到该https://clients2.googleusercontent.com/crx/download/地址.

我不记得我是怎么想出那个URL的(它在某个地方的页面源或我使用过网络嗅探器),但自去年12月以来它一直很适合我,所以它看起来很可靠.

  • 谷歌似乎最近改变了一些东西,这种方法不再适用(它返回204).任何人都知道改变了什么?chrome-extension-downloader.com的作者似乎修复了它,但没有更新文档. (12认同)
  • 确认此URL不再有效,我也得到"204 No Content".**请参阅提及PRODVERSION的答案,一个有效.** (7认同)
  • 不再有效.我得到'204 No Content`.甚至在用`&`替换`%3D`和'%'以及`%26`之后. (4认同)

aru*_*net 7

我写了一个小的 python 脚本来自动化这个过程@serg @Rob W

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

你也可以使用它。

python ChromeAppDownloader.py -u https://chrome.google.com/webstore/detail/google-maps/lneaknkopdijkpnocmklfnjbeapigfbh
Run Code Online (Sandbox Code Playgroud)

这就是你必须使用的方式。


pri*_*ime 7

您可以使用以下 URL 模板,

https://clients2.google.com/service/update2/crx?response=redirect&prodversion=[PRODVERSION]&x=id%3D[EXTENSIONID]%26uc
Run Code Online (Sandbox Code Playgroud)

PRODVERSIONChrome 版本。(从设置 -> 帮助 -> 关于 Google Chrome 获取)。例如:版本69.0.3497.100(官方版本)(64 位)

EXTENSIONID扩展的 ID。例如:这是一个示例插件,https://chrome.google.com/webstore/detail/jetbrains-ide-support/hmhgeddbohgjknpmjagkdomcpobmllji ?hl=en id 是hmhgeddbohgjknpmjagkdomcpobmllji

因此,下载示例请求将是https://clients2.google.com/service/update2/crx?response=redirect&prodversion=69.0.3497.100&x=id%3Dhmhgeddbohgjknpmjagkdomcpobmllji%26uc


Wii*_*zco 5

获取 crx 文件的另一种方法。

  1. 复制扩展程序的网址,例如: https: //chrome.google.com/webstore/detail/tiff-viewer/fciggfkkblggmebjbekbebbcffeacknj ?hl=es

  2. 在网站http://crxextractor.com/

  3. 单击“免费开始”选项。

  4. 将扩展程序的 url 粘贴到文本框中。

  5. 单击“下载”选项。

  6. 单击选项“GET .CRX”。