Открыть сервис

Tampermonkey: менеджер пользовательских скриптов

Tampermonkey — это бесплатное браузерное расширение (менеджер пользовательских скриптов), позволяющее выполнять на веб-страницах произвольный JavaScript-код, создаваемый сторонними разработчиками или самим пользователем. Расширение доступно для большинства популярных браузеров, включая Google Chrome, Mozilla Firefox, Microsoft Edge, Opera и Safari, и является одной из наиболее распространённых альтернатив более раннему расширению Greasemonkey.

История и происхождение

Проект Tampermonkey был создан немецким разработчиком Яном Бендером (Jan Bender) в 2010 году. Расширение задумывалось как более функциональная и современная альтернатива Greasemonkey — одному из первых менеджеров пользовательских скриптов для Firefox, появившемуся в 2005 году. В отличие от Greasemonkey, который долгое время был ориентирован исключительно на Firefox, Tampermonkey изначально разрабатывался как кроссплатформенное решение.

Первоначально расширение распространялось через официальный каталог Chrome Web Store, что обеспечило ему быстрый рост популярности среди пользователей Google Chrome. Позднее были выпущены версии для других браузеров. Название «Tampermonkey» является игрой слов: «tamper» (вмешиваться) и «monkey» (обезьяна), отсылающей к названию Greasemonkey («grease» — смазка, «monkey» — обезьяна).

Основные функции и устройство

Tampermonkey работает по принципу внедрения пользовательских скриптов в загружаемые веб-страницы. Скрипты представляют собой файлы с кодом JavaScript, содержащие специальные метаданные — блок // ==UserScript==, в котором указываются название, версия, описание, список сайтов, на которых скрипт должен выполняться, и другие параметры.

Ключевые возможности

  • Управление скриптами: включение и отключение отдельных скриптов без их удаления, а также возможность временной паузы для всех скриптов.
  • Редактор кода: встроенный редактор с подсветкой синтаксиса, автодополнением и проверкой ошибок.
  • Расписание: поддержка выполнения скриптов по расписанию, например, для автоматического обновления данных.
  • Хранилище данных: API для сохранения настроек и данных между сессиями (аналог localStorage).
  • Синхронизация: возможность синхронизации скриптов между устройствами через облачные сервисы (Google Drive, Dropbox) или встроенное облако Tampermonkey.
  • Импорт и экспорт: удобные инструменты для резервного копирования и переноса скриптов между браузерами.
  • Режим совместимости: поддержка метаданных и API как Greasemonkey, так и более новых стандартов.

Совместимость и форматы скриптов

Tampermonkey поддерживает большинство скриптов, написанных для Greasemonkey, а также расширенный набор API. Основные команды включают GM_getValue, GM_setValue, GM_xmlhttpRequest (для выполнения кросс-доменных запросов), GM_addStyle, GM_registerMenuCommand и другие.

Скрипты распространяются в виде файлов с расширением .user.js. Установка производится либо переходом по прямой ссылке на файл, либо через специализированные репозитории. Крупнейшим каталогом пользовательских скриптов является сайт Greasy Fork, который поддерживает загрузку и поиск скриптов, совместимых с Tampermonkey.

Применение

Сфера применения Tampermonkey чрезвычайно широка и ограничивается лишь фантазией разработчиков. Наиболее типичные сценарии использования:

  • Улучшение интерфейса: удаление рекламных блоков, изменение вёрстки, добавление тёмной темы на сайты, не имеющие её.
  • Автоматизация действий: автозаполнение форм, автоматическое нажатие кнопок, сбор данных со страниц.
  • Расширение функциональности: добавление на сайты отсутствующих функций, например, сортировки таблиц, горячих клавиш или экспорта данных.
  • Интеграция сервисов: связывание разных сайтов между собой, например, автоматическое перенесение информации из одного сервиса в другой.
  • Инструменты для веб-мастеров: тестирование вёрстки, проверка SEO-параметров страницы, просмотр скрытых элементов.

Безопасность и ограничения

Поскольку Tampermonkey выполняет произвольный код на любых сайтах, его использование несёт потенциальные риски безопасности. Злонамеренный скрипт может похищать cookies, данные авторизации, личную информацию или выполнять нежелательные действия от имени пользователя. Разработчики расширения рекомендуют устанавливать скрипты только из доверенных источников и проверять их код перед установкой.

Встроенная система безопасности Tampermonkey предоставляет пользователю контроль над разрешениями: при установке скрипта отображается список запрашиваемых доменов и API, и пользователь может отказать в доступе к определённым ресурсам. Также существует возможность запуска скриптов только на указанных в метаданных сайтах.

Распространение и популярность

По состоянию на 2024 год Tampermonkey является одним из самых популярных расширений для браузеров. Количество его установок в Chrome Web Store превышает десятки миллионов. Расширение регулярно обновляется, поддерживая актуальные версии браузеров и новые веб-стандарты.

Существует также версия Tampermonkey для браузеров на базе Chromium для мобильных устройств, однако её функциональность ограничена по сравнению с десктопными версиями.

Альтернативы

Основными конкурентами Tampermonkey на рынке менеджеров пользовательских скриптов являются:

  • Greasemonkey — пионер жанра, ориентированный в основном на Firefox.
  • Violentmonkey — открытое расширение с открытым исходным кодом, доступное для Chrome, Firefox и Edge.
  • UserScripts — встроенная поддержка пользовательских скриптов в браузере Safari.

Несмотря на конкуренцию, Tampermonkey сохраняет лидирующие позиции благодаря богатой функциональности, удобному интерфейсу и активной поддержке разработчика.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →