Я не уверен, на каких языках эти расширения, я думаю, они написаны на Html, Javascript или JSON. Насколько я знаю, они «сжаты» в файл .CRX.
Можно ли напрямую изменить html, js, json расширения Chrome (или любого другого языка, который они используют)?
google-chrome
Алексченко
источник
источник
Ответы:
Я поискал это в Google и нашел вот что:
источник
crx
наzip
и щелкнуть по нему не получится.unzip
команда будет работать даже наcrx
расширение.Каталоги установленных расширений Chrome перечислены ниже:
Скопируйте папку расширения, которое хотите изменить. (Названный в соответствии с идентификатором расширения, чтобы найти идентификатор расширения, перейдите по ссылке
chrome://extensions/
). После копирования вам необходимо удалить папку _metadata.С
chrome://extensions
в режиме разработчика выберите Load распакованного расширения ... и выберите скопированную папку расширения, если он содержит вложенное это с именем версии, выберите эту версию папки , в которой есть файл манифест, этот файл необходим для Chrome.Внесите изменения, затем выберите «Обновить» и обновите страницу своего расширения, чтобы увидеть изменения.
Каталоги расширений Chrome
Mac:
Windows 7:
Windows XP:
Ubuntu 14.04:
источник
\Default
каталог в пути к расширению указывает на профиль, для которого установлено расширение. Если вы используете несколько профилей в Chrome,\Default
это профиль по умолчанию и\Profile1
первый созданный дополнительный профиль.null
имя пользователя, поэтому скопированный путь не работает - я на OS X - крутая идея, просто нужно немного работай. Да и еще, косая черта между расширениями и идентификатором расширения отсутствует.Подписанный файл CRX имеет заголовок, который приведет к сбою большинства / всех распаковщиков. Это не самый простой способ сделать это, но вот как это сделать из командной строки bash.
Основная идея состоит в том, чтобы найти, где начинается исходный zip-файл без подписи, затем скопировать CRX-файл в zip-файл, но исключить заголовок CRX.
hexdump -C the_extension.crx | more
dd if=the_extension.crx of=the_extension.zip bs=1 skip=0x132
(Вместо параметра пропуска замените смещение, найденное на предыдущем шаге.)Я уверен, что есть более лаконичный способ сделать это. Эксперты по Башу, пожалуйста, улучшите мой ответ.
источник
0x132
unzip
. Он пожаловался на дополнительные 306 байтов заголовка, но все равно сделал это.unzip
работает отлично:warning [YouTubeCenter.crx]: 304 extra bytes at beginning or within zipfile (attempting to process anyway)
00000230 63 d5 11 76 bf 9f 50 4b 03 04 14 00 08 08 08 00 |c..v..PK........|
webext="Downloads/Extension_v0.1.crx" dd if="$webext" of="${webext%.crx}.zip" bs=1 skip=$(hexdump "$webext" | awk '/50 4b/{a=$1; for(i=2;i<=NF;i++){if($i=="50" && $(i+1)=="4b"){print "0x"substr(a,0,6)i-2;exit}}}')
Обратите внимание, что у некоторых zip-программ возникают проблемы с распаковкой CRX, как описано в Sathish - если это так, попробуйте использовать 7-Zip - http://www.7-zip.org/
источник
Я прочитал другие ответы и считаю важным отметить еще несколько вещей:
1.) Для пользователей Mac: когда вы нажимаете «Загрузить распакованное расширение ...», папка библиотеки по умолчанию скрыта и (даже если на вашем Mac включен параметр «Показать скрытые файлы»), она может не отображаться в окне поиска Chrome. .
2.) Подпапка, содержащая расширение, представляет собой случайную буквенно-цифровую строку, названную по идентификатору расширения, которую можно найти на странице расширения Chrome, если для флага разработчика установлено значение true. (Флажок вверху справа на странице расширений)
источник
(Уже сказано) Я обнаружил это при создании некоторых тем Chrome (которые уже давно исчезли ... :-P)
Темы, расширения и т. Д. Chrome - это просто сжатые файлы. Загрузите 7-zip или WinRar, чтобы распаковать его. У каждого расширения / темы есть файл manifest.json. Откройте файл manifest.json в блокноте. Затем, если вы знаете кодировку, измените код. Будут еще какие-то файлы. Если вы посмотрите в файл манифеста, вы сможете понять, для чего нужны файлы. Тогда вы можете все изменить ...
источник
Файлы .CRX похожи на файлы .ZIP, просто измените расширение и щелкните правой кнопкой мыши> Извлечь файлы, и все готово.
После того, как вы извлекли файлы -> измените их, добавьте в zip и измените расширение обратно на .crx.
В противном случае -> Открыть Chrome -> Настройки -> Расширения -> Включить параметры разработчика -> Загрузить распакованное расширение (измененная папка с извлеченными файлами), а затем нажать на расширение пакета.
Источник
источник
Теперь Chrome является многопользовательским, поэтому он
Extensions
должен быть вложен в профиль пользователя ОС, а затем в профиль пользователя Chrome. Мой первый пользователь Chrome был вызванProfile 1
, мойExtensions
путь былC:\Users\
username
\AppData\Local\Google\Chrome\User Data\
Profile 1
\Extensions\
.Чтобы найти свой Перейдите в
chrome://version/
(пользуюсьabout:
из-за лени).Обратите внимание на
Profile Path
и просто добавьте,\Extensions\
и у вас есть свой.Надеюсь, это обновит эту информацию по этому вопросу.
источник
Код расширения .CRX можно изменить, потому что это простой архив .zip. Вы можете загрузить расширение, извлечь его исходный код, изменить его (протестировать и отладить, поскольку оно на вашей стороне) и упаковать обратно в файл .CRX.
Я погуглил этот инструмент, чтобы просто загрузить расширение .CRX и извлечь исходный код, и он сработал для меня: http://crxextractor.com
Все, что он делает, - это разбирает формат файла .CRX и извлекает настоящий .zip, содержащий исходный код.
источник
Если вы установили переносную версию Chrome или установили ее в настраиваемый каталог - расширения не будут доступны в каталоге, указанном в ответах выше.
Попробуйте щелкнуть правой кнопкой мыши ярлык Chrome и проверить каталог «Target». Оттуда перейдите в один каталог выше, и вы сможете увидеть
User Data
папку, а затем сможете использовать ответы, упомянутые выше.источник