У меня был очень похожий опыт, но я остановился на другом решении.
Я тоже тестировал скрипт на 8 ядерном 32 гб дедике с широким каналом и там еле еле 10 потоков шло.
Работающими решением оказалось взять 32 ядерный локальный сервер с 64 оперативки, на не очень быстром канале, с сокс5, на нем 100+ потоков запускалось.
Скрипт тот же, никаких оптимизаций не делалось.
Стоит конечно побольше, чем аренда дедика но тут уж зависит от окупаемости твоей темы, стоит ли оно того или нет.
Но соксы могут быть узким местом, по возможности нужно делать свои соксы. Для этого, можно брать дешевые VPS и установить сокс через опенсурсный софт microsocks для линукса (в инете полно инструкций по установке, занимает не более 5 минут вручную, и можно установку через БАС автоматизировать также на случай если нужны сотни соксов).
Получить индекс по присутствие элемента
-
Пытаюсь получить индекс с помощью Получить Индекс

В поле Значение вставляю нужный домен (для примера: sbis.ru)
А переменная список (где нужно найти домен) содержит эти элементы- <h3 class="LC20lb MBeuO DKV0Md">Беспроводные сигнализации AJAX в Калининграде от ...</h3>*https://bg39.ru/manufacturers/ajax/
- <h3 class="LC20lb MBeuO DKV0Md">Ajax - беспроводные сигнализации в Калининграде в ...</h3>*https://hdprocctv.ru/katalog/sistemy-videonablyudeniya/ajax/
- <h3 class="LC20lb MBeuO DKV0Md">AJAX⚔️ (@ajax_kaliningrad) • Instagram photos and videos</h3>*https://www.instagram.com/ajax_kaliningrad/
- <h3 class="LC20lb MBeuO DKV0Md">AJAX StarterKit комплект беспроводной смарт ... - iCenter</h3>*https://icenter-store.ru/gadzhety/umnyy-dom/ajax-starterkit-komplekt-besprovodnoy-smart-signalizatsii-tsvet-belyy/
- <h3 class="LC20lb MBeuO DKV0Md">AJAX StarterKit Plus комплект беспроводной смарт ... - iCenter</h3>*https://icenter-store.ru/gadzhety/umnyy-dom/ajax-starterkit-plus-komplekt-besprovodnoy-smart-signalizatsii-tsvet-belyy/
- <h3 class="LC20lb MBeuO DKV0Md">ООО "СК АЯКС" - Калининград - СПАРК</h3>*https://spark-interfax.ru/kaliningradskaya-oblast-kaliningrad/ooo-sk-ayaks-inn-3906328580-ogrn-1143926022316-1044c5eb1f3f4fb29908ccf8331d2445
- <h3 class="LC20lb MBeuO DKV0Md">Охранные системы и сигнализации AJAX в Калининграде</h3>*https://kaliningrad.tiu.ru/Ohrannye-sistemy-i-signalizatsii;12678-Ajax
- <h3 class="LC20lb MBeuO DKV0Md">СК АЯКС, ООО (236029, Калининградская обл., г.о ... - СБИС</h3>*https://sbis.ru/contragents/3906328580/390601001
- <h3 class="LC20lb MBeuO DKV0Md">sb39.ru - Калининград</h3>*https://sb39.ru/
- <h3 class="LC20lb MBeuO DKV0Md">ООО "СК Аякс" - Rusprofile</h3>*https://www.rusprofile.ru/id/8600122
каждая строка новый элемент списка
Теперь по идеи функция должна мне вернуть номер индекса где присутствует домен sbis.ru, т.е 8
Но я получаю -1 (т.е домен отсутствует)
Как я могу реализовать поиск чтоб функция вернула мне индекс даже если есть совпадение по определенному кусочку в строке ? -
@dilolo
Что разобрался ?
В любом случаи нужно будет перебирать масив.
Используй "Выполнить код"
Вот вариант твоего решения:var arr = [ "<h3 class=\"LC20lb MBeuO DKV0Md\">Беспроводные сигнализации AJAX в Калининграде от ...</h3>*https://bg39.ru/manufacturers/ajax/", "<h3 class=\"LC20lb MBeuO DKV0Md\">Ajax - беспроводные сигнализации в Калининграде в ...</h3>*https://hdprocctv.ru/katalog/sistemy-videonablyudeniya/ajax/", "<h3 class=\"LC20lb MBeuO DKV0Md\">AJAX⚔️ (@ajax_kaliningrad) • Instagram photos and videos</h3>*https://www.instagram.com/ajax_kaliningrad/", "<h3 class=\"LC20lb MBeuO DKV0Md\">AJAX StarterKit комплект беспроводной смарт ... - iCenter</h3>*https://icenter-store.ru/gadzhety/umnyy-dom/ajax-starterkit-komplekt-besprovodnoy-smart-signalizatsii-tsvet-belyy/", "<h3 class=\"LC20lb MBeuO DKV0Md\">AJAX StarterKit Plus комплект беспроводной смарт ... - iCenter</h3>*https://icenter-store.ru/gadzhety/umnyy-dom/ajax-starterkit-plus-komplekt-besprovodnoy-smart-signalizatsii-tsvet-belyy/", "<h3 class=\"LC20lb MBeuO DKV0Md\">ООО \"СК АЯКС\" - Калининград - СПАРК</h3>*https://spark-interfax.ru/kaliningradskaya-oblast-kaliningrad/ooo-sk-ayaks-inn-3906328580-ogrn-1143926022316-1044c5eb1f3f4fb29908ccf8331d2445", "<h3 class=\"LC20lb MBeuO DKV0Md\">Охранные системы и сигнализации AJAX в Калининграде</h3>*https://kaliningrad.tiu.ru/Ohrannye-sistemy-i-signalizatsii;12678-Ajax", "<h3 class=\"LC20lb MBeuO DKV0Md\">СК АЯКС, ООО (236029, Калининградская обл., г.о ... - СБИС</h3>*https://sbis.ru/contragents/3906328580/390601001", "<h3 class=\"LC20lb MBeuO DKV0Md\">sb39.ru - Калининград</h3>*https://sb39.ru/", "<h3 class=\"LC20lb MBeuO DKV0Md\">ООО \"СК Аякс\" - Rusprofile</h3>*https://www.rusprofile.ru/id/8600122" ]; var reg = /sbis.ru/; var index = []; arr.forEach(function(item, i, arr) { if( reg.test(item) == true){ index.push(i); }; }); log(index);Вернет все совпадения в массиве.
-
This post is deleted!
-
@dilolo said in Получить индекс по присутствие элемента:
Может есть какое то регулярное выражение с помощью которого можно игнорировать все элементы до нужного домена и после ?
Типа[\S\s]+sbis.ru[\S\s]+(https:\/\/[?.][a-zA-Z0-9А-яЁё]+.[A-z]+)
-
@denanotherday Это если регулярка найдет там любую ссылку. А как сделать чтоб он нашел ссылку с моим доменом ?