![]() | |
Оригинальный автор (ы) | Аарон Будман |
---|---|
Разработчики) | Энтони Лиуаллен, Йохан Сундстрём, [1] еще 13 [2] |
изначальный выпуск | 28 марта 2005 г . [3] |
Стабильный выпуск | 4.10 / 4 октября 2020 г . |
Репозиторий | ![]() |
Написано в | JavaScript , XUL , CSS |
Операционная система | Кроссплатформенность |
Доступно в | английский |
Тип | Расширение Mozilla |
Лицензия | Лицензия MIT |
Интернет сайт | www |
![]() |
Содержание |
---|
Происхождение и происхождение |
Категория |
Greasemonkey - это менеджер пользовательских скриптов, доступный как расширение Mozilla Firefox . Он позволяет пользователям устанавливать сценарии, которые на лету вносят изменения в содержимое веб-страницы после или до загрузки страницы в браузере (также известный как расширенный просмотр ).
Изменения, внесенные на веб-страницы, выполняются каждый раз при просмотре страницы, что делает их фактически постоянными для пользователя, запускающего сценарий.
Greasemonkey можно использовать для настройки внешнего вида страниц, добавления новых функций к веб-страницам (например, встраивания сравнения цен в торговые сайты), исправления ошибок визуализации, объединения данных с нескольких веб-страниц и многих других целей.
История [ править ]
Проект Greasemonkey начался 28 ноября 2004 года, автор - Аарон Будман. [4] [5] [6] Будман был вдохновлен написать Greasemonkey после просмотра расширения Firefox, предназначенного для очистки интерфейса AllMusic . [7] Это расширение было написано Адрианом Головатым , который позже стал разработчиком пользовательских скриптов. К маю 2005 года для Greasemonkey было распространено около 60 общих и 115 специфичных для сайта пользовательских скриптов. [7] В это время также был разработан компилятор Greasemonkey для преобразования пользовательского скрипта в отдельное расширение Firefox. [8] Greasemonkey изначально был встречен издателями жалобами на его способность блокировать рекламу. [9]Однако эта критика сместила акцент на другие дополнения, начиная с выпуска Adblock Plus в 2006 году .
Userscripts.org [ править ]
Чтобы приспособиться к растущему числу скриптов, в конце 2005 года Бритт Селвителль и другие члены сообщества Greasemonkey основали userscripts.org. Userscripts.org был открыт в 2007 году, но позже сайт отошел от этой кодовой базы. [10] В качестве основного репозитория сценариев, указанного на официальном сайте Greasemonkey, userscripts.org собирает тысячи сценариев в год.
В 2010 году последний известный администратор Джесси Эндрюс сообщил, что сайт находится в режиме обслуживания из-за нехватки времени, и попросил нового сопровождающего добровольно. [11] Тем не менее, он оставался единственным администратором сайта до тех пор, пока 1 апреля 2013 года не началось обсуждение количества установок. [12] До этого многие из «самых популярных скриптов», перечисленных на сайте, имели номинальное количество установок, равное нуль. В течение следующего года спам-скрипты стали более распространенными, время простоя сервера увеличилось, а ошибка счетчика установок осталась. [13] Поскольку Эндрюс больше не общался, авторы пользовательских скриптов описали этот сайт как заброшенный, а официальный сайт Greasemonkey удалил ссылку на его первую страницу. [14] [15]В ответ авторы сценариев и другие разработчики начали работу над форком "openuserjs.org", [16] [17], а позже - greasyfork.org, [18] в качестве немедленной замены. [19]
В мае 2014 года userscripts.org стал недоступен на 80-м порту, вместо этого пользователям предлагалось получить к нему доступ через порт 8080. [13] В августе 2014 года сайт был полностью закрыт. Большинство его скриптов были скопированы на статическое зеркало userscripts-mirror.org, где их теперь можно найти. [13]
Технические детали [ править ]
Пользовательские скрипты Greasemonkey написаны на JavaScript и управляют содержимым веб-страницы с помощью интерфейса объектной модели документа . Сценарии обычно пишутся для конкретных страниц или домена (применяются ко всем страницам в домене), но также могут быть помечены тегами для применения ко всем доменам для глобальных улучшений браузера. Пользователи Greasemonkey могут писать или загружать сценарии и сохранять их в своей личной библиотеке. Когда пользователи посещают веб-сайт, соответствующий сценарию в их личной библиотеке сценариев, Greasemonkey вызывает соответствующие сценарии.
Сценарии Greasemonkey могут изменять веб-страницу любым способом, который позволяет JavaScript, с определенными ограничениями безопасности Greasemonkey. Сценарии также могут получать доступ к другим веб-страницам и веб-службам через запрос XMLHTTP без ограничений домена , что позволяет объединить внешний контент с исходным содержимым страницы.
Сценарии называются somename .user.js, и Greasemonkey предлагает установить любой такой сценарий, когда запрашивается URL-адрес, заканчивающийся этим суффиксом. Сценарии Greasemonkey содержат метаданные, которые определяют имя сценария, описание, ресурсы, необходимые для сценария, URL-адрес пространства имен, используемый для различения сценариев с одинаковыми именами, и шаблоны URL-адресов, для которых сценарий предназначен для вызова или нет.
Написание сценария Greasemonkey аналогично написанию JavaScript для веб-страницы с некоторыми дополнительными допусками, такими как межсайтовые XMLHttpRequests . По сравнению с написанием полноценного расширения Firefox, создание пользовательских сценариев является очень скромным шагом вперед по сравнению с базовым веб-программированием. Однако сценарии Greasemonkey ограничены из-за ограничений безопасности, налагаемых Mozilla XPCNativeWrappers [20]. Например, сценарии Greasemonkey не имеют доступа ко многим компонентам Firefox, таким как диспетчер загрузки, процессы ввода-вывода.или его основные панели инструментов. Кроме того, скрипты Greasemonkey запускаются для каждого экземпляра соответствующей веб-страницы. Из-за этого сложно управлять списками элементов глобально. Однако авторы сценариев используют файлы cookie, и Greasemonkey даже предлагает API, такие как GM_getValue и GM_setValue, чтобы преодолеть это.
Пользовательские скрипты [ править ]
Серверы хостинга файлов для Greasemonkey требуют, чтобы URL-адреса сценариев заканчивались на, .user.js
а не на тип MIME, например text/html
. Поддержка HTTPS встретится с [ требуется пояснение ] встроенным средством проверки обновлений Greasemonkey. По состоянию на июль 2019 года в проекте Greasemonkey перечислены три рекомендуемых хостинга пользовательских скриптов: [21]
- Gist , служба pastebin, управляемая GitHub, где размещаются простые файлы. Файлы можно вставлять в веб-форму и сохранять. По умолчанию используется HTTPS . Файлы могут следовать схеме именования с суффиксом «.user.js» для URL-адреса, служащего ссылкой для установки.
- Greasy Fork, сайт, созданный разработчиком userstyles.org. [18]
- OpenUserJS.org, сайт , который начался как вилка для устаревшего сценария хранилища userscripts.org. [16] [17]
Совместимость [ править ]
Greasemonkey доступен для Firefox , Flock и GNOME Web (ранее назывался Epiphany). Greasemonkey расширение для Web является частью веб - расширения пакета. Однако это расширение не полностью совместимо с выпуском 2.15.1, поскольку некоторые функции API Greasemonkey (например, GM_getValue ) не поддерживаются. Существуют также специальные версии для SeaMonkey , [22] [23] Songbird , [24] Pale Moon , [25] qutebrowser [26] и браузера Falkon .
См. Также [ править ]
- Список расширенного программного обеспечения для просмотра
- Список расширений Firefox
- Стильный
- Tampermonkey
Ссылки [ править ]
- ^ "Интернет-журнал о Greasemonkey" .
- ^ "Сетевой граф greasemonkey" .
- ^ "Первоначальный выпуск Greasemonkey" .
- ^ "Информация о проекте Greasemonkey" . Архивировано из оригинального 25 марта 2012 года . Проверено 31 августа 2011 года .
- ^ Пилигрим, Марк (2005). Greasemonkey Взломы . О'Рейли. ISBN 978-0-596-55357-9.
- ^ «Аарон Будман написал Greasemonkey в 2004 году» .
- ^ a b Сингел, Райан (17 мая 2005 г.). "Пользователи Firefox, обезьяна с Интернетом?" . Проводной журнал.
- ^ Nivi (8 мая 2005). «Greasemonkey взорвет бизнес-модели (как и ваш разум)» . Архивировано из оригинала 3 июня 2006 года . Проверено 22 июля 2010 года .
- ↑ Festa, Paul (24 марта 2005 г.). «Надстройка Firefox позволяет пользователям настраивать сайты, но безопасно ли это?» . CNET.
- ^ Selvitelle, Britt (3 января 2007). "Userscripts.org ... Открытый исходный код!" . Архивировано из оригинального 17 -го января 2007 года . Проверено 21 мая 2014 .
- ^ «Передача факела на userscripts.org» . Хакерские новости . 2010 . Проверено 24 октября 2014 года .
- ^ «Исправление количества установок» . 1 апреля 2013 г. Архивировано из оригинала 3 ноября 2013 года . Проверено 21 мая 2014 .
- ^ a b c Бринкманн, Мартин (9 мая 2014 г.). «Userscripts.org навсегда закрыт? Вот альтернативы» . Проверено 21 мая 2014 .
- ^ «Хостинг пользовательских сценариев» . 16 мая 2014 . Проверено 21 мая 2014 .
- ^ "Пожалуйста, измените официальный пользовательский скрипт сайта" . greasemonkey-dev (список рассылки). 21 апреля 2014 . Проверено 21 мая 2014 .
- ^ a b "OpenUserJS" . openuserjs.org .
- ^ a b «Исправление количества установок - стр. 6» . 1 апреля 2013 г. Архивировано из оригинала 3 ноября 2013 года . Дата обращения 5 ноября 2015 .
- ^ a b «Жирная вилка» . greasyfork.org .
- ^ Barnabe, Джейсон (19 февраля 2014). «Представляем Greasy Fork - сайт пользовательских скриптов» . Дата обращения 5 ноября 2015 .
- ^ . https://developer.mozilla.org/en/XPCNativeWrapper
- ^ «Хостинг пользовательских сценариев - GreaseSpot Wiki» . wiki.greasespot.net . Проверено 22 июля 2019 .
- ^ "Greasemonkey" . mozdev.org . моздев . Проверено 5 мая 2009 года .
- ^ "Порт Greasemonkey для SeaMonkey - О программе - OpenUserJS" . openuserjs.org .
- ^ ianloic. «Жирная обезьяна» . Певчая птица . Архивировано из оригинала 2 июня 2008 года . Проверено 5 мая 2009 года .
- ^ "janekptacijarabaci / greasemonkey" . GitHub . Проверено 23 марта 2020 года .
- ^ «Улучшения для поддержки GreaseMonkey · Проблема № 3238 · qutebrowser / qutebrowser» . GitHub . Дата обращения 19 мая 2020 .
Внешние ссылки [ править ]
СМИ, связанные с Greasemonkey на Викискладе?
- Официальный веб-сайт