Полезная информация

Пользователи не любят читать документацию. Станьте оригинальным, будьте не как все. Ознакомьтесь с нашей базой знаний.

№105103-10-2020 14:59:18

leshiy_odessa
Участник
 
Группа: Members
Зарегистрирован: 13-02-2009
Сообщений: 272
UA: Firefox 81.0

Re: Greasemonkey

Народ, подскажите как на facebook.com можно порезать URL от лишнего хлама?


https://www.facebook.com/mark.solonin.7/posts/3894718980544430?__cft__[0]=AZUkbLF9aucofTpQkQSFMZ7WsrEkrHW6DBgBQ7wLZelKmU_bD1v-WmV32EuYUj-yQH87Up8ShND2GzLCJiHj6RhuEBcTr6MnjrZHRNuh9455a6KTkrqIcxwg28DBc0V5XoYW3xqfz0zRIoDlww5kOXO8&__tn__=%2CO%2CP-R


Дело в том, что я сделал в Stylus подкрашивание заголовка в «уже прочитанно» (к примеру 11 сентября в 00:30), но при обновлении страницы URL меняется, но не основная его часть.

Отредактировано leshiy_odessa (03-10-2020 15:04:09)

Отсутствует

 

№105203-10-2020 17:51:15

pointer
Участник
 
Группа: Members
Откуда: планета Земля
Зарегистрирован: 09-12-2011
Сообщений: 38
UA: Firefox 81.0

Re: Greasemonkey

Получить без "?" строку URL можно, это

Выделить код

Код:

location.protocol + '//' + location.host + location.pathname

.
Но вот что дальше делать с полученной строкой - не могу понять.
Кстати, вот список свойств объекта, для большей гибкости:

скрытый текст
•    location.protocol. Определяет протокол или метод.
•    location.hostname. Определяет имя узла.
•    location.port. Определяет порт соединения.
•    location.host. Комбинация двух предыдущих свойств.
•    location.pathname. Каталог расположения документа на узле и имя файла.
•    location.hash. Название анкера в документе, если такой определен (всё, что после #).
•    location.target. Атрибут target ссылки, которая привела к открытию текущего документа.
•    location.query. Определяет строку запроса.
•    location.href. Определяет полный URL.
•     location.search. Параметры строки (всё, что после знака «?»).

Отсутствует

 

№105303-10-2020 17:51:40

mokujin
Участник
 
Группа: Members
Зарегистрирован: 17-02-2017
Сообщений: 407
UA: unknown 0.0

Re: Greasemonkey

oleg.sgh пишет

Не, это не то и бессмысленно. Отключить скрипты я могу, только на сайте не написано, что там внедрен скрипт с "источник".

Конечно ненаписано. Этот скриптег-гад, может вообще быть в теле страницы прописан в тэгах <script>......мудокод_с_добавлением_своего_мусора_при_копировании.....</script> и никак ты его не "зарэжэшЪ" ...
кроме как таким же мудацким способом, сделав скрипт в GM который будет парсить страницу и отменять выполнение скрипта по ключевым словам. Типа того(яхз как он будет в теперешнем FF работать и есть ли там это событие 'beforescriptexecute'):

скрытый текст

Выделить код

Код:

// ==UserScript==
// @name                   disable Inline scripts on pages (может делать гадости, ломать, крушить страницы)
// @namespace            none
// @grant                     none
// @include                  http*
// @run-at                  document-start
// ==/UserScript==

window.addEventListener('beforescriptexecute', breakBadScripts, false);

 function breakBadScripts(e) {
     let  script = e.target, flag;

     let arrAdWords = [
            "AdBlockDetected",
            "AdDelivery.prototype",
            "adspayformy.site",
            "trafficjunky.net",
            "webkitSpeechRecognition",
            "ExoDetector.domain_base",
            "ExoLoader.addZone",
            "requestTrafficJunkyAds",
            "window.zone_",
            "abbp1.pw",
            "ads.exosrv.com",
            "adfox_ad_pixel",
            "adfox_shtorka_",
            "yandexContextAsyncCallbacks",
            "Ya.Context.AdvManager.render",
            "window.NREUM||(NREUM={})).loader_config=",
            "GoogleAnalyticsObject"
            ];

 arrAdWords.forEach( function(adword) {
        flag = script.text.indexOf(adword) +1;
   if(flag) {
        e.preventDefault();
        e.stopPropagation();
        //e.stopImmediatePropagation();
        console.log("Заблокировал скрипт по слову: \"" + adword + "\" \:\n" + script.text.slice(0,220));
        // let div = document.getElementById('caa0'); div.style.display='none';
        }

  });

  };


...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation

Отсутствует

 

№105403-10-2020 18:27:33

mokujin
Участник
 
Группа: Members
Зарегистрирован: 17-02-2017
Сообщений: 407
UA: unknown 0.0

Re: Greasemonkey

leshiy_odessa
Попробуй.

скрытый текст

Выделить код

Код:

// ==UserScript==
// @name                            fb-Remove
// @namespace                   none
// @include                         http*facebook.com/*
// @version                         2.0.0.2
// @grant                            none
// @run-at                          document-start
// ==/UserScript==

window.addEventListener("DOMContentLoaded",utmRemove, false);
// нижеследующий ↓ Слушатель убери\закоментируй, если работает и так. Этот нижний, еще и по двойному клику исполнение скрипта добавляет.
window.addEventListener("dblclick", utmRemove, false);

function utmRemove() {
     const regex = new RegExp(/(http.*facebook.com.*)\?__cft__.*/gi);
          let arrLinks = Array.from(document.links),
                    locS = regex.test(location.search);

    if( locS && history.replaceState ) { history.replaceState( null,'', location.href.replace(regex, '$1') ) };
//             console.log("Кол-во ссылок : " + arrLinks.length);
// убрать из ссылок страницы
       if (arrLinks.length > 1) {
     arrLinks.forEach( function(lnk) {
        if( lnk.href.match(regex) ) {
             let newHref = lnk.href.replace(regex, '$1'), oRel = lnk.getAttribute('rel');
                   oRel = oRel ? ( oRel + ' ' ) : '';
                 lnk.setAttribute('rel', oRel + 'redirect');
                 lnk.setAttribute('replacedurl', lnk.href);
                 lnk.title = ( lnk.title ? ( lnk.title + ' - ' ) : '' ) + 'Old URL: \n' + decodeURIComponent(lnk.href);
                 lnk.href = newHref;
                 }
         })
  };

};


...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation

Отсутствует

 

№105503-10-2020 18:55:15

leshiy_odessa
Участник
 
Группа: Members
Зарегистрирован: 13-02-2009
Сообщений: 272
UA: Firefox 81.0

Re: Greasemonkey

mokujin пишет

Попробуй.

Сам URL имеет первозданный вид, а вот в открытой вкладке уже обрезанный.

Смысл в том, чтобы Firefox открывал уже обрезанный URL, а иначе он не зафиксируем «уже открытый» URL.

YbcJry2.png

Отсутствует

 

№105603-10-2020 19:40:46

mokujin
Участник
 
Группа: Members
Зарегистрирован: 17-02-2017
Сообщений: 407
UA: unknown 0.0

Re: Greasemonkey

leshiy_odessa пишет

Смысл в том, чтобы Firefox открывал уже обрезанный URL, а иначе он не зафиксируем «уже открытый» URL.

хах, так не выйдет, ЕЯПП. Это тебе нужно расширение аналог PureURL чтоб перехватывались и изменялись запросы.


...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation

Отсутствует

 

№105704-10-2020 02:48:18

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 2800
UA: Firefox 81.0

Re: Greasemonkey

Это только у меня переодически слетают все скрипты в Tampermonkey? Как их быстро восстановить из резервного профиля. А ещё лучше если кто-нибудь подскажет, как предотвратить слетание.
ЗЫ Не нашёл более подходящую тему, если есть более уместная, то перенесу, если кто направит.

Отсутствует

 

№105805-10-2020 02:48:52

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 676
UA: Firefox 81.0

Re: Greasemonkey

voqabuhe
У меня не слетают. Чем чистишь профиль? У меня свой батник + SpeedyFox.
С 79-й заметил такую вещь. Проверяй у себя.

Отсутствует

 

№105909-11-2020 11:20:43

mike2003
Участник
 
Группа: Members
Зарегистрирован: 29-04-2006
Сообщений: 265
UA: Firefox 82.0

Re: Greasemonkey

Можно ли с помощью Greasemonkey перенести кнопку YouTube?

скрытый текст
kYldSAw.jpg

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]