crx DL link
@@ -7,11 +7,18 @@
* @javascript_url
*/
+// alternative
+// https://robwu.nl/crxviewer/
+// https://github.com/Rob--W/crxviewer
+
// https://stackoverflow.com/questions/7184793/how-to-download-a-crx-file-from-the-chrome-web-store-for-a-given-id
-// http://0-9.tumblr.com/post/52782603407/chrome-extension-development-casual
+// DEPRECATED: TODO fix
// dev-doc c.f.
// https://gist.github.com/noromanba/5776183
+
+// e.g.
+// https://chrome.google.com/webstore/detail/privacy-badger/pkehgijcmpdhfbdbbnkijodmdjhbjlgp
(() => {
'use strict';
@@ -24,18 +31,22 @@
const link = new URL('https://clients2.google.com/service/update2/crx');
// URLSearchParams c.f.
// https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams
- //*/
link.searchParams.set('response', 'redirect');
link.searchParams.set('x', 'id=' + extid + '&uc');
// perhaps Chrome/mium ver: 32 or higher e.g. 33, 64, 99
- link.searchParams.set('prodversion', '32');
- /*/
- // .append for old browsers
- link.searchParams.append('response', 'redirect');
- link.searchParams.append('x', 'id=' + extid + '&uc');
- link.searchParams.append('prodversion', '32');
- //*/
+ link.searchParams.set('prodversion', '999');
+ // crx2, crx3, ...
+ link.searchParams.set('acceptformat', [
+ ...Array(10).keys()
+ ].map(v => 'crx' + v).join(','));
window.prompt('.crx raw link', link);
})();
+// DEV
+// https://clients2.google.com/service/update2/crx
+// ?response=redirect
+// &prodversion=999
+// &acceptformat=crx2,crx3,crx4
+// &x=id%3Dpkehgijcmpdhfbdbbnkijodmdjhbjlgp%26uc
+
/*
* @title crx DL link
* @description prompt download-link of Chrome Extension aka crx on Chrome Web Store
* @include https://chrome.google.com/webstore/detail/*
* @contributor taizooo http://let.hatelabo.jp/taizooo/let/gYC-x-e5r_G0bw (Fork of)
* @license MIT License https://opensource.org/licenses/MIT
* @javascript_url
*/
// alternative
// https://robwu.nl/crxviewer/
// https://github.com/Rob--W/crxviewer
// https://stackoverflow.com/questions/7184793/how-to-download-a-crx-file-from-the-chrome-web-store-for-a-given-id
// DEPRECATED: TODO fix
// dev-doc c.f.
// https://gist.github.com/noromanba/5776183
// e.g.
// https://chrome.google.com/webstore/detail/privacy-badger/pkehgijcmpdhfbdbbnkijodmdjhbjlgp
(() => {
'use strict';
// url syntax of Extension Page;
// https://chrome.google.com/webstore/detail/[<EXTENSION_NAME>]/<EXTENSION_ID>[/]
const extid = location.pathname.split('/').filter(s => !!s).pop();
// You can use http, but final url redirect to https
// OBSOLETE prod=chrome
const link = new URL('https://clients2.google.com/service/update2/crx');
// URLSearchParams c.f.
// https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams
link.searchParams.set('response', 'redirect');
link.searchParams.set('x', 'id=' + extid + '&uc');
// perhaps Chrome/mium ver: 32 or higher e.g. 33, 64, 99
link.searchParams.set('prodversion', '999');
// crx2, crx3, ...
link.searchParams.set('acceptformat', [
...Array(10).keys()
].map(v => 'crx' + v).join(','));
window.prompt('.crx raw link', link);
})();
// DEV
// https://clients2.google.com/service/update2/crx
// ?response=redirect
// &prodversion=999
// &acceptformat=crx2,crx3,crx4
// &x=id%3Dpkehgijcmpdhfbdbbnkijodmdjhbjlgp%26uc
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。