[google-chrome] 주어진 ID에 대해 Chrome 웹 스토어에서 CRX 파일을 다운로드하는 방법은 무엇입니까?

웹 스토어에서 확장 프로그램의 .crx 파일을 다운로드하고 싶습니다. 웹 스토어에서 확장 프로그램을 설치하여 가져 왔을 때 fiddler를 사용하여 네트워크 요청을 분석합니다.
예를 들어 확장 프로그램의 경우 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로 확장의에 대한 보편적 인 방법이 있다면 지금은 궁금하네요 문제는 구글을 어떻게했는지입니다 암호화

bjclhonkhgkidmlkghlkiffhoikhaajg

으로

OgAAADQ_Loe5gfVPF2OUaB35tvex-NKlmA8V4K5YlWuvLCknMH7egLLmnMoFuCZePl_idE1GMf8jZC2KbjQqyyLDoDAAxlKa5eDp-z9frOppHWtQsRU3-iGrrrrA ?

어떤 아이디어라도 도움이 될 것입니다.



답변

내 확장 프로그램 중 하나의 경우 확장 ID 만 알고있는 다른 CRX를 자동으로 다운로드해야했습니다. 다음 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 (어딘가에있는 페이지 소스에 있었거나 네트워크 스니퍼를 사용 했음)을 어떻게 생각해 냈는지 이미 기억이 나지 않지만 작년 12 월부터 잘 작동했기 때문에 안정적으로 보입니다.


답변

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 특정 모듈 (예 : 염화나트륨)을 포함하는 경우, 당신은 추가 매개 변수를 추가해야합니다 ( os, arch, nacl_arch).

완전한 CRX 다운로드 URL을 생성하는 전체 로직은 https://github.com/Rob–W/crxviewer/blob/master/src/cws_pattern.jsget_crx_url함수를 참조하십시오 .

이것은 Chrome 웹 스토어 ( https://chrome.google.com/webstore/detail/chrome-extension-source-v/jifpbeccnghkjeaalbbjmodiffmgedin) 에서 사용할 수있는 Chrome 확장 소스 뷰어 확장 프로그램의 일부입니다.


Chrome에서 로 설정된 응답을 자동으로 가로 채기 때문에 Chrome 에서 이전 URL을 열면 다운로드가 트리거 되지 않습니다 . Chrome 확장 프로그램에서 crx 파일을 프로그래밍 방식으로 다운로드하려면 MIME 유형을로 변경하십시오 (예 :에서 수행됨 ).Content-Typeapplication/x-chrome-extensionapplication/octet-streamsrc/lib/crx-to-zip.js


답변

바로이 웹 사이트가 있습니다.

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


답변

@serg @Rob W를 처리하는 과정을 자동화하기 위해 작은 파이썬 스크립트를 작성했습니다.

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

그것도 사용할 수 있습니다.

python ChromeAppDownloader.py -u https://chrome.google.com/webstore/detail/google-maps/lneaknkopdijkpnocmklfnjbeapigfbh

이것이 당신이 사용해야하는 방법입니다.


답변

이것은 피들러를 사용하는 것보다 덜 기술적 인 방법이며, 지금은 3 년이 된 것을 알고 있지만 다른 사람이 문제를 해결했는지 항상 확인합니다. 그래서 누군가 그랬다는 것을 알았고 그들의 솔루션을 성공적으로 여러 번 사용했습니다. 그들의 솔루션은 Give Me CRX라는 다른 확장을 다운로드 할 수있는 확장입니다.

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


답변

또한이 웹 사이트 http://crxextractor.com 을 사용해 보는 것이 좋습니다 . 여기에서 Chrome Webstore URL로 확장 프로그램을 다운로드하고 브라우저에서 소스 코드를 추출 할 수 있으며 추가 소프트웨어가 필요하지 않으며 모든 작업이 한두 번의 클릭으로 완료됩니다.


답변

아래 URL 템플릿을 사용할 수 있습니다.

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

PRODVERSION은 크롬 버전입니다. (설정-> 도움말-> Google 크롬 정보에서 가져옵니다). 예 : 버전 69.0.3497.100(공식 빌드) (64 비트)

EXTENSIONID는 확장의 ID입니다. 예 : 다음은 샘플 플러그인입니다. https://chrome.google.com/webstore/detail/jetbrains-ide-support/hmhgeddbohgjknpmjagkdomcpobmllji?hl=ko ID는hmhgeddbohgjknpmjagkdomcpobmllji

따라서 다운로드 요청 샘플은 https://clients2.google.com/service/update2/crx?response=redirect&prodversion=69.0.3497.100&x=id%3Dhmhgeddbohgjknpmjagkdomcpobmllji%26uc입니다.