tampermonkey как писать скрипты
Русские Блоги
Простое руководство по написанию скриптов от tamperMonkey
Недавно я научился писать сценарии, у меня есть некоторые идеи, запишите их, давайте вместе делать успехи!
Сначала установите плагин Google Tampermonkey BETA
В Интернете есть много учебных пособий, но tamperMonkey не может быть установлен, или не может быть установлен помощник по доступу. Позвольте мне записать мой процесс установки как меморандум
Примечание. Совместимо только с Google Chrome. Google Access Assistant Baidu облачный адрес Ссылка на сайт: https://pan.baidu.com/s/1Iq8Cw_dMbRIG6mAGjivkYA Пароль: nhdy
1. Нажмите в верхнем правом углу Google Chrome.Значок трех точек,Больше инструментовНажмите Расширение ( E )
2, Присоедините Google Access Assistant _v2.3.0 Перетащите на страницу расширения, Google Assistant автоматически установит его,
3. Нажмите на детали в Google Assistant
5. Следуйте инструкциям на рисунке
6. Добавить новый скрипт
7, Вы можете написать код в редакторе.
В редакторе есть этот шрифт
Интеллектуальная рекомендация
заметки об изучении Java (2)
Более мощный контроль прокрутки RecyClerview
Более мощный контроль прокрутки RecyClerview Новый FruitAdapter02: Модифицировать: Катиться горизонтально Изменить fruit_item02.xml: Модифицировать: Водопады Изменить XML: Модифицировать: Установите с.
Вводное руководство по сканеру Python Лекция 10: Многопоточное сканирование Tuzhongwang
Пользовательский селектор jQuery
Планирование весенних задач
Простая настройка планирования весенних задач: 1. Существует две формы задания конфигурации: JobDetailBean и MethodInvokingJobDetailFactoryBean. 1.1 Конфигурация кода JobDetailBean: 1.2 Me.
Tampermonkey как писать скрипты
A short significant description.
Internationalization is done by adding an appendix naming the locale.
@homepage, @homepageURL, @website and @source
@icon, @iconURL and @defaulticon
@icon64 and @icon64URL
@updateURL
@downloadURL
@supportURL
@include
The pages on that a script should run. Multiple tag instances are allowed.
Please note that @include doesn’t support the URL hash parameter. You have to match the path without the hash parameter and make use of window.onurlchange
@matchMultiple tag instances are allowed. @excludeMultiple tag instances are allowed. @require@resource@connectIf it’s not possible to declare all domains a userscript might connect to then it’s a good practice to do the following: Additionally add «@connect *» to the script. By doing so Tampermonkey will still ask the user whether the next connection to a not mentioned domain is allowed, but also offer a «Always allow all domains» button. If the user clicks at this button then all future requests will be permitted automatically. Users can also whitelist all requests by adding ‘*’ to the user domain whitelist at the script settings tab. @run-at@grantSince closing and focusing tabs is a powerful feature this needs to be added to the @grant statements as well. If a script runs on a single-page application, then it can use window.onurlchange to listen for URL changes: // ==UserScript== @antifeatureThis tag allows script developers to disclose whether they monetize their scripts. It is for example required by GreasyFork. @noframes@unwrap@nocompatunsafeWindowSubresource IntegrityTM supports SHA-256 and MD5 hashes natively, all other (SHA-1, SHA-384 and SHA-512) depend on window.crypto. In case multiple hashes (separated by comma or semicolon) are given the last currently supported one is used by TM. If the content of the external resource doesn’t match the selected hash, then the resource is not delivered to the userscript. All hashes need to be encoded in hex or Base64 format. GM_addStyle(css)GM_addElement(tag_name, attributes), GM_addElement(parent_node, tag_name, attributes)Creates an HTML element specified by ‘tag_name’ and applies all given ‘attributes’ and returns the injected HTML element. If a ‘parent_node’ is given, then it is attached to it or to document head or body otherwise. GM_addElement(‘script’, < GM_addElement(‘script’, < GM_addElement(document.getElementsByTagName(‘div’)[0], ‘img’, < GM_deleteValue(name)GM_listValues()GM_addValueChangeListener(name, function(name, old_value, new_value, remote) <>)GM_removeValueChangeListener(listener_id)GM_setValue(name, value)GM_getValue(name, defaultValue)GM_log(message)GM_getResourceText(name)GM_getResourceURL(name)GM_registerMenuCommand(name, fn, accessKey)GM_unregisterMenuCommand(menuCmdId)GM_openInTab(url, options), GM_openInTab(url, loadInBackground)GM_xmlhttpRequest(details)Make an xmlHttpRequest. Important: if you want to use this method then please also check the documentation about @connect. Userscripts. УглубляемсяКак упоминалось в предыдущей статье, юзерскрипты поддерживаются всеми современными браузерами. И даже кое-как поддерживаются в IE7 и выше. Пару слов о движкахКачество поддержки юзерскриптов находится на разном уровне в разных браузерах. Лучше всего поддержка юзерскриптов выполнена в браузерах Firefox и Chrome. Самые жесткие ограничения на юзерскрипты накладывает Chrome. Но почти все эти ограничения обходятся упаковыванием скрипта в простое расширение. Подробности этого процесса мы обсудим в следующей статье. Теперь поговорим подробнее о поддержке юзерскриптов в отдельных браузерах. Поддержка в FirefoxMozilla Firefox поддерживает юзерскрипты после установки расширения GreaseMonkey (в русском сленге — обезъяна) или Scriptish. Исторически, все юзерскрипты писались под браузер Firefox именно из-за наличия удобного плагина. К сожалению, ни один браузер, кроме Firefox, не предоставляет GM API. Этот печальный факт заставляет использовать эмуляции GM API через расширения или дополнительные юзерскрипты. В случае разработки юзерскрипта «с нуля», я считаю предпочтительным отказаться от эмуляции GM API и использовать «велосипеды» собственного производства. Это позволяет уменьшить число зависимостей юзерскрипта, что, в свою очередь, позволяет вести разработку в рамках концепции одного файла: модифицировать придётся всего один файл; пользователю нужен всего один файл для запуска юзерскрипта. Концепция одного файла позволяет существенно уменьшить сложность поддержки и кроссбраузерной разработки юзерскриптов! Поддержка в ChromeGoogle Chrome поддерживает юзерскрипты нативно, т.е. не требует установки плагинов/расширений. Можно (иногда нужно) упаковать юзерскрипт в расширение. Важно: фактически, расширение и юзерскрипт — разные понятия. И если подходить к вопросу строго, стоит говорить о разработке простых расширений под Chrome. Поддержка в OperaOpera поддерживает юзерскрипты нативно, но не предоставляет сколь-нибудь дружелюбного пользовательского интерфейса для управления скриптами. Такой интерфейс доступен в расширении UJS Manager. Поддержка в IEIE7, IE8, IE9 поддерживают юзерскрипты при использовании плагина Trixie. Важно: Если не отключать дополнительные «приблуды» в IE7Pro, то плагин может изрядно тормозить браузер, особенно на тяжёлых страницах. Как видите, с запуском скриптов у IE дела обстоят паршиво. Остаётся радоваться, что такая возможность вообще имеется. Важно: Оба плагина могут существовать в системе одновременно, не мешая друг другу. Важно: Учитывая вышесказанное, я всегда предлагаю своим пользователям использовать Trixie. Поддержка в SafariК сожалению, мне не довелось поработать с данным браузером. Буду рад любым разъяснениям в комментариях! Поддержка в Mobile Safari и прочих браузерахВ виду отсутствия поддержки юзерскриптов в менее популярных браузерах и мобильных браузерах, юзерскрипты придётся предоставлять в виде букмарклета. На последокЧто такое Tampermonkey и как им пользоваться19.06.2019 3 мин. чтения Tampermonkey — расширение для браузера, с помощью которого можно управлять пользовательскими скриптами для различных сайтов. Данное расширение является чрезвычайно популярным, потому что оно позволяет автоматизировать повседневные задачи, улучшать определенные сайты, меняя их внешний вид, добавляя новые функции или скрывая нежелательные вещи. Установка расширения TampermonkeyКак пользоваться TampermonkeyПосле установки расширения вам необходимо найти пользовательский скрипт с необходимыми вам функциями для нужного сайта или написать собственный скрипт. Давайте рассмотрим процесс написания собственного скрипта для автоматизации какого-нибудь действия. Есть футбольный онлайн менеджер Живи Футболом. Один из способов заработать там виртуальную валюту для своего клуба — это заключать контракты на показ рекламы во время домашних матчей. На бесплатном аккаунте необходимо заходить раз в 15 минут на страницу и проверять возможность заключить более выгодный контракт. Если есть возможность заключить новый контракт, то надо нажать на зеленую стрелочку. Давайте автоматизируем данное действие с помощью Tampermonkey и нашего скрипта в браузере Google Chrome. Для создания нового скрипта необходимо нажать на значок расширения, а потом выбрать «Создать новый скрипт…». В открывшемся окошке мы будем писать наш скрипт. Сначала заполняем начальные параметры: Дальше напишем код, который будет запрашивать разрешение на вывод уведомлений в браузере. Наш скрипт запускается только на странице *://soccerlife.ru/base.php?mode=adverts, поэтому если мы сейчас зайдем на главную страницу, то ничего не увидим нового. А если зайдем на страницу с рекламными контрактами, то браузер запросит у нас разрешение на показ уведомлений. Теперь напишем функцию, которая будет показывать нам уведомления: Дальше опишем логику наших действий. Нам необходимо на странице найти стрелочки и посмотреть активна хотя бы одна из них или нет. Если хотя бы одна стрелочка активна, значит есть возможность заключить контракт. Если посмотреть исходный код страницы, то видно, что у активных и неактивных стрелочек есть определенный class. Его мы и будем использовать. Остается только написать периодический вызов функции для проверки доступности активных предложений: Теперь пока открыта вкладка с рекламными предложениями наш скрипт каждые 5 минут будет проверять возможность заключить контракт, перезагружая страницу для обновления информации. Вот так мы автоматизировали один из процессов в онлайн игре. Tampermonkey как писать скриптыЧасто посещаю вышеназванные сайты и прежде чем открывать раздачу сначала охота просто посмотреть скрины (в особенности на Порнолабе). Так и появилась идея написать эти скрипты. До этого с веб программированием и javascript-ами не работал, мог где-нибудь накосячить(поправкам буду рад!). Принцип работы прост, щелкаем по пустому месту в строке раздачи, скрины загружаются. Щелкаем еще раз, скрины удаляются. Подробнее смотрите на гифках. Отлично сочетается со скриптом Mouseover Popup Image Viewer (не мое). Данный скрипт показывает увеличенное изображение при наведении на привью изображения (Видно на гифке с Рутором). Для работы этих скриптов необходимо расширение Tampermonkey (Google Chrome). Для Мазилы тоже есть подобное расширение Greasemonkey, но там эти скрипты не взлетели. Пример работы на Руторе. (пережал гифку малек) Пример работы на Порнолаб. Для установки открываем нужный скрипт и нажимаем зеленую кнопку «Установить этот скрипт». Обновление скриптов для Рутор и ПикабуСсылка на предыдущий пост, где расписано что это и для чего нужно. — Теперь загружается полное описание темы раздачи, а не только скрины. — Добавлена поддержка rutor.in, rutor.info, rutor.is — Теперь скрипт сворачивает любой пост где есть клубничные теги (на тот случай если автор забыл поставить клубничку). Как установить и что для этого нужно, читать здесь. — Скрипты для Рутрекера и ННМ-Клаба; — Правки скрипта для Порнолаба; Кнопки сортировки комментариев снова с нами!Итак, были просьбы вернуть кнопки сортировки комментариев со страницы настроек обратно на страницу поста. К счастью, на пикабу сохранился необходимый функционал и вернуть их очень легко, что я и сделал. Сразу покажу как это выглядит: Есть два варианта установки. Первый через TamperMonkey (хром), либо GreaseMonkey (мозилла). Работает везде, где можно установить одно из этих расширений. После установки *Monkey, надо кликнуть по ссылке и всё должно само установиться. Точно сработает под хромом, а вот на мозилле не тестировал. Второй вариант — через закладки. Менее удобно, но и фича нужна не так часто. Сгодится для пользователей мобильного хрома. Для этого надо создать каким-либо образом специальную закладку. Пробовал только в хроме, поскольку другими я не пользуюсь. На компьютере (если включена синхронизация, то закладка появится и на телефоне). 1. Копируете огромную ссылку отсюда: клик 2. Открываете диспетчер закладок, где создаете новую закладку с этой ссылкой и хорошим названием На телефоне немного заковыристо, но не очень сложно. 1. Копируете огромную ссылку отсюда: клик 2. Создаете закладку на любую страницу и сразу нажимаете «редактировать» внизу. 3. Там заменяете ссылку на скопированную и придумываете хорошее название Чтобы закладкой пользоваться с телефона, надо просто начать набирать в адресной строке имя этой чудо-закладки. То же самое на десктопном хроме. Напоминаю, что установка скриптов от неизвестного пикабушника — не очень безопасно. Конечно можно же выучить js и прочитать код (его мало), но можно и рискнуть. Короче, всё на ваш страх и риск. Буду надеяться, что оно работает. На старт, внимание.У нас тут большой (и сложный) забег за промокодами. Милейший вомбат собирает ноты, хлопушки и билеты, потому что знает толк в развлечениях. Помогите ему! В конце концов, от вас требуется только вовремя нажимать одну кнопку. Скрипт для сворачивания NSFW постовТак как на Пикабу можно только полностью скрывать NSFW посты, а просто сворачивать нельзя. Я на выходных написал скрипт для этого. 1. Если не установлен Tampermonkey, устанавливаем. (Chrome, Firefox) 2. Переходим по ссылке и нажимаем на «Установить этот скрипт» 3. Разрешаем установку 4. Готово. Теперь все посты с тегом NSFW будут выглядеть так. Если надо На Android установить скрипт получится только в браузер, в приложение никак. 2. Устанавливаем Tampermonkey по этой инструкции (на русском не нашел, переводчик в помощь) 3. Дальше установка не отличается от ПК. Т.к. в мобильной версии нет кнопки для раскрытия поста, то посмотреть пост полностью можно только перейдя на него. Скрипт для РутрекераНаконец-то доделал скрипт для Рутрекера. Функционал у скрипта схож со скриптами для Порнолаба и Рутора, а именно загрузка описания раздачи на странице списка раздач. Скрипт работает как на форме поиска, так и на страницах форума с раздачами. Имеется возможность скачивания торрента не заходя в раздачу. -Так как Рутрекер пожизненно заблокирован, то многие используют различные расширения для обхода блокировки. Так вот: Скрипт не работает с расширением FriGate (для работы с их прокси требуется авторизация). На замену я использую подобное расширение ZenMate. — При загрузке описания раздачи немного ломается разметка и оформление. (похоже отсутствуют нужные классы в css таблицах или что-то подобное. Если есть Веб-мастера, просьба подсказать как подправить). Как установить скрипт и что для этого нужно читаем в предыдущем посте. Оказалось, у пользователей Оперы тоже есть возможность использования скриптов (На Опере и Фаерфоксе скрипты не тестировались). Подробнее здесь. На очереди скрипт для ННМ-Клаба. Пишите свои пожелания по скриптам, возможно реализую в будущем. Скрипт для Пикабу «Клубничка не пались!»Серыми рабочими буднями часто хочется отвлечься и поглазеть на что-нибудь прекрасное. Для этого как нельзя лучше подходят клубничные посты на Пикабу. Но клубничка может появиться неожиданно сверкнув на весь офис. Для избежания подобной ситуации и был написан этот скрипт. Его функционал простой, при загрузке страницы сворачивать клубничные посты. Скрипт тестировался только на постраничном выводе. Как установить и что для этого нужно расписано в предыдущем посте. Теперь просмотр Пикабу на работе выглядит примерно так: В скором времени планирую обновить скрипт для Рутора. — поддержка зеркала Rutor.in — загрузка не только скринов, но и полного описания раздачи. UserScript для пикабуВ общем накидал маленький скрипт чтобы блюрить NFSW. Замечательный «сервис» от UPS и забота о защите данных клиентовДовелось мне не так давно заказывать с Амазона. Некоторая проблема в таком заказе в том, что для части товаров нет возможности выбора вариантов доставки и в итоге международная доставка будет оформлена через UPS. Мой личный опыт с UPS, если исключать последние события, не сильно отрицательный, но в Интернете можно найти много плохих отзывов как по скорости доставки, так и по другим параметрам. Моя проблема заключалась в том, что одну посылку Амазон оформил как два разных отправления из-за того, что позиции были от разных продавцов. И вот на прошлой неделе мне пришло оповещение от UPS, что обе посылки поступили на таможню и нужно предоставить все необходимые для оформления данные, после чего подтвердить их пин-кодом из смс. Однако для одной посылки смс мне пришла 7 часов после получения оповещения, а вторая так и не дошла вовсе. Попытки достучаться до поддержки по контактному адресу почты ни к чему не приводят на протяжении уже почти недели. Звонить на телефон поддержки тоже бесполезно, так как ты висишь на линии 25-30 минут и слушаешь повторяющееся сообщение о том, что нет свободных операторов и как появится, сразу же ответят. При этом телефон поддержки далеко не бесплатный, то есть такое вот висение тоже вылетает в копеечку. А если учесть еще и тот факт, что хранение груза бесплатное в течение только первых 3 дней, то становится совсем грустно от такого «сервиса» Что еще интереснее, так это то, что и на самой странице авторизации https://ups-broker.ru нет никакой защиты от брутфорса. То есть в теории можно написать скрипт, который будет перебирать пароль и телефонные номера. Учетная запись там создается автоматически и на почту приходит логин по телефонному номеру и пароль из 6 цифр. Вряд ли многие клиенты заморачиваются сменой пароля на что-то более серьезное, а потому и подобрать такие пароли не должно быть проблемой. Такой вот сервис и забота о безопасности данных у UPS. Писать или звонить им об этой очевидной уязвимости смысла не вижу по той причине, что до поддержки даже со своей проблемой я так и не достучался. Возможно огласка хоть как-то поможет.
|