Подключение скрипта к браузеру google chrome
Иногда бывает необходимость написать свой скрипт для браузера.
Рассмотрим пример подключения скрипта к браузеру google chrome:
Жмем правой кнопкой мыши в пустом поле страницы

Откроется панель:

- открываем вкладку → Sources
- открываем вкладку → Snippets
- Добавляем новый Сниппет
- В пустое окошко вставляем наш код
Далее нам необходимо запустить наш скрипт, для этого нужно кликнуть правой кнопкой на созданном скрипте:

После запуска наш скрипт делает замутнение фамилий для защиты персональных данных при записи видео

Далее хотелось бы чтобы скрипт выполнялся в автоматическом режиме.
Мы нашли плагин для google chrom:


Ищем и устанавливаем плагин → User JavaScript and CSS

В верхней панели браузера должен появиться значек:

Открываем установленный плагин, и добавляем новое правило для нашей страницы:

В левое окно для вставки JS кода вставляем наш скрипт и жмем кнопку сохранить.
Вот и все. Теперь наше правило будет работать в автоматическом режима для нашего сайта.
Для того чтобы отключить работу скрипта необходимо активировать переключатель:

Ниже скрипт, который скрывает персональные данные:
var count = document.body.innerHTML.length;
var hideBody = true;function hiddenPersonal() {
var regex = [
/^([А-ЯA-Z]|[А-ЯA-Z][\x27а-яa-z]{1,}|[А-ЯA-Z][\x27а-яa-z]{1,}\-([А-ЯA-Z][\x27а-яa-z]{1,}|(оглы)|(кызы)))\040[А-ЯA-Z][\x27а-яa-z]{1,}(\040[А-ЯA-Z][\x27а-яa-z]{1,})?$/, //ФИО полностью
/[А-Я]{1}\.[А-Я]{1}\./, //ФИО сокращено
/^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$/, //телефон
/\b([a-z0-9._-]+@[a-z0-9.-]+)/, //почта
/[.]+[рф]|[ru]|[com]/ //домен
];
document.querySelectorAll('body *').forEach(el => {
if ('nodeName' in el) {
el.childNodes.forEach(childEl => {
if (childEl.nodeName == '#text') {
regex.forEach(pattern => {
if (pattern.test(el.innerText)) {
el.style.filter = 'blur(5px)';
}
});
}
});
}
});
}function hideBodyFoo() {
if (hideBody) {
document.body.style.filter = 'blur(5px)';
} else {
document.body.style.filter = '';
}
}hiddenPersonal();
setInterval(() => {
hideBodyFoo();
var newCount = document.body.innerHTML.length;
if (newCount != count) {
hideBody = true;
count = newCount;
hiddenPersonal();
} else {
hideBody = false;
}
}, 100)