TrinityScripts [Channel]
192 subscribers
31 photos
2 videos
47 links
PHP-доргены от Trinity.
Описание: https://trinityscripts.blogspot.com/
Приобретение: @BountyTrio
Download Telegram
Провел небольшое сравнительное тестирование эффективности кэша у CPAGen старой и новой версий. В обоих версиях включил все парсеры (сниппеты, картинки, видео, подсказки), а также загрузку 100 товаров с API ГдеСлон. Сделал по 100 запросов к каждой версии доргена (ключи в запросах использовал одинаковые), чтобы кэшировать контент этих 100 страниц. Затем сделал по 10 запросов к каждой из этих кэшированных страниц (т.е. всего 1000 запросов). Результаты следующие:

TrinityCPAGen: размер кэша 100 страниц составил 1.85мб, скорость поиска и отдачи кэша на 1000 запросов составила около 14 секунд.

CPAGen: размер кэша 100 страниц составил 51.8мб, скорость поиска и отдачи кэша на 1000 запросов составила около 1 минуты. Кроме того, эта версия при каждом обращении к кэшу повторно парсит его, создавая дополнительную нагрузку на процессор.

Эффективный кэш для серверных доргенов является жизненно важным, т.к. позволяет уменьшить количество обращений к поисковым системам и каталогам товаров, что существенно ускоряет работу сайтов (первоначальная генерация этих 100 страниц в один поток составила около 2,5 минут в обоих случаях, т.к. она ограничена скоростью получения информации от сторонних сайтов).
Сегодня провел сравнительное тестирование еще одной функции доргена - парсинг товаров из локальных xml- и csv-фидов.

API от ГдеСлон это, конечно, хорошо, но не все им пользуются. ГдеСлон, а также другие партнерки, в т.ч. западные, позволяют делать файловые выгрузки товаров. В обеих версиях CPAGen заявлено, что он умеет парсить товары из локальных файлов, поэтому давайте проверим, какая версия делает это лучше.

Для тестов я использовал две большие выгрузки товаров по 300мб. Одна была в формате CSV с западной партнерки, другая была в формате XML с ГдеСлон. Ключевое слово я поместил в самый конец обоих файлов, чтобы доргенам пришлось пропарсить их от начала до конца. После этого я сделал по одному запросу к каждому доргену, использя данное ключевое слово. Результаты получились следующие.

CSV-файл:
CPAGen нашел ключевое слово за 50 сек. Должен сказать, что мне предварительно пришлось еще минут 20 потратить на то, чтобы понять, почему он не мог его найти в первых тестах. Оказывается он понимает только разделитель ';', а в моей выгрузке разделителем была ','. Кроме того по непонятной причине он каверкает ключевое слово так, что потом сам не может его найти. Принудительно вбил в его код перед началом поиска ключевое слово в таком виде, в котором оно присутствует в выгрузке, тогда процесс пошел.
TrinityCPAGen нашел ключевое слово за 46 сек. Неплохо, но я захотел протестировать скорость нескольких разных подходов. В итоге добился колоссального прироста производительности - поиск стал проходить всего за 6 секунд.

XML-файл:
CPAGen провалил тест, т.к. он прерывает поиск и возвращает ошибку "Shop: missing required attribute 'company'". Вновь ковыряться в его коде у меня желания не было.
TrinityCPAGen с обновленным механизмом поиска справился за 8 секунд.

В обоих случаях данный запрос кэшировался, поэтому в ответ на повторное обращение страница загружалась моментально. Также, новый CPAGenTrinity умеет работать с несколькими выгрузками одновременно, показывая их на страницах сайта в качестве категорий, поэтому быстродействие доргена можно еще больше увеличить, если разбить крупную выгрузку на несколько маленьких.

Все, кто купил дорген ранее, могут перекачать и заменить корневой файл "index.php", чтобы получить обновленный механизм поиска.
Наконец-то дошли руки и я написал свой даунлодер веб-страниц! Раньше, желая создать новый шаблон для доргена, приходилось мучиться со всякими качалками под Windows или с wget-ом, но теперь у меня появилось собственное решение.

Заданные в списке веб-страницы какого-либо сайта с красивым оформлением (например, главная страница, страница категории и страница товара) скачиваются и сохраняются в корневой папке сайта сразу с расширением '.php'. Также, в корневой папке сайта создается подпапка 'res', в которую помещаются все остальные файлы (стили, срипты, картинки, шрифты и т.д.). Весь этот минимализм нужно просто положить в папку на виртуальном сервере и можно спокойно начинать править шаблон под себя.

Нет больше гигантского дерева из подпапок, которое нельзя нарушать из-за относительных путей! Нет больше искаверканых имен файлов из-за '?' или '#' в ссылке на них! Нет больше слетевших стилей и шрифтов! Да здравствует комфорт и удобство!!!
Релиз TrinityCPAGen 2.0 - стоимость 8000 руб, стоимость обновления 2000 руб.

Работая над TrinityThunder я проводил много тестов и, в итоге, усовершенствовал движок Trinity, сделав его еще быстрее. Сейчас же я внедрил обновленный движок в CPAGen, а также добавил и другие новшества.

Список всех изменений:
- автоматический пинг карты сайта в Google сразу после привязки домена
- дорген теперь может работать в подпапке основного сайта, запускаясь и генерируя контент только лишь в ответ на запросы типа "/shop/*"
- обновленный движок Trinity находит и возвращает кэшированные данные во много раз быстрее
- добавлена опция включения\отключения кэширования (удобно для проведения тестов)
- добавлена опция включения\отключения сжатия кэша, задание степени сжатия кэша
- добавлена опция по ручной настройке транслитерации url
- изменен алгоритм подбора товаров по ключевому слову, благодаря чему выборка стала более релевантной и создается быстрее
- изменен код парсера картинок, благодаря чему он стал собирать больше картинок
- добавлена возможность задать список прокси для парсеров
- функция проксирования картинок стала работать корректно в тех случаях, когда у изображения нет расширения
- скорректирован исход сценария при котором несколько потоков скрипта одновременно пытаются инициализировать один и тот же домен
- некоторая оптимизация кода в дефолтном шаблоне для лучшего представления контента парсеров
- некоторые изменения в структуре папок для большей интуитивности

https://trinityscripts.blogspot.com/2022/12/trinitycpagen.html
Многие привыкли к администрированию хостинга и ошибочно полагают, что настроить VPS для работы с доргеном это что-то из разряда научной фантастики. По этой причине я получаю вопросы на тему, будут ли мои доргены работать на хостинге. Честно говоря, мне даже лень проверять, потому что хостинг больше подходит для сайта на какой-нибудь CMS, но никак не для серверного доргена.

Не так давно мне нужно было целиком выгрузить один очень вредный сайт с бегетовского хостинга, и ради этого я даже написал отдельный скрипт. Так вот, при скачивании сайта этот хостинг постоянно подвисал, отдавая ошибки 50х, а затем просто падал минут на 5-10. И это несмотря на то, что от отчаяния я скачивал его уже в один поток и без всякого мультиплексирования. Такое вот дерьмо эти ваши хостинги под управлением Apache.

Если вы хотите успешно запускать динамические дорвеи пачками, то вам непременно нужна следующая классическая связка: VPS с SSD + CENTOS 7 + PHP-FPM 7 + NGINX. С такой связкой даже одноядерная VPS по самому дешевому тарифу будет весьма неплохо для своей стоимости справляться с нагрузкой!

Настроить VPS самому вовсе не трудно. Я написал краткую инструкцию всего из 4 шагов, следуя которой вы сможете установить на VPS с CENTOS 7 необходимый софт и произвести необходимые настройки. Дальше уже можно спокойно загрузить на сервер дорген и привязать к нему домены, не используя при этом бесполезный хлам, вроде панели Vesta.
Все доргены и скрипты представлены на сраницах блога: https://trinityscripts.blogspot.com/
TrinityScripts [Channel] pinned «Все доргены и скрипты представлены на сраницах блога: https://trinityscripts.blogspot.com/»
В последние дни я получал теоретические вопросы по поводу работы TrinityThunder, но т.к. был загружен до обоснованных ответов смог добраться только сегодня.

Часто спрашивают, что делать, если поисковики забанят IP сервера и TrinityThunder больше не сможет парсить? Во-первых, перед парсингом очередной статьи дорген выбирает поисковик случайным образом из целого списка имеющихся. Во-вторых, вы всегда можете добавить список своих прокси, чтобы перед парсингом дорген случайным образом выбирал еще и IP. В-третьих, сегодня я протестировал все поисковики, отправляя с одного IP по 10к последовательных запросов в каждый. На последнем запросе от каждого поисковика был получен контент релевантный последнему кейворду, следовательно ни от одного поисковика не было ни бана, ни shadow-бана. Поэтому каких-либо ограничений для массового парсинга я не вижу.

Теперь к вопросам о производительности: сколько можно добавлять доменов, ключей на домен и т.п. - в доргене такие ограничения не установлены. В сравнении со старой версией, новый TrinityThunder более легкий и быстрый, поэтому сможет выжать из вашего железа максимум.

Я решил сравнить локальную производительность обоих доргенов. Для теста я сохранил 2 веб-страницы с маленькой и большой статьями в файлы, размеры которых получились 175кб и 1мб соответственно. Затем в обоих доргенах я отключил кэширование и внес некоторые правки в код: при вызове функции парсинга статьи они должны были открывать этот локальный файл (а не обращаться в интернет), парсить из него статью и выводить на странице. В итоге я отправил по 1к одинаковых запросов к обоим доргенам на каждую из статей, результаты получились следующие.

TrinityThunder справился с маленькой статьей за 15 сек, а с большой за 21 сек. Старый Thunder справился с маленькой статьей за 197 сек, а с большой за 1702 сек (это больше, чем 28 минут). Все дело в том, что старый Thunder задействует тяжелый функционал во время разбора статьи, а это критически сказывается на производительности, и, в зависимости от контента, может надолго отправить в раздумья даже мощный сервер.
На досуге распаковал завалявшийся у меня архив с доргеном Мика Фокси под названием "Autodor 2.2.3".

Автор широко известен в узких кругах, а его дорген умеет работать с API ГдеСлон, поэтому мне стало любопытно взглянуть, что он из себя представляет.

Прочитав весь код я разочаровался, т.к. ожидал увидеть что-то более интересное. Несмотря на то, что дорген пережил множество релизов, по глубине содержания его код напоминает школьный реферат.

Основные минусы движка:
-) нагроможденность бесполезными функциями создает пустую нагрузку на сервер
-) однопоточный парсер и ошибки в обращении с БД затягивают время генерации контента

В остальном же, часть функционала не продумана, часть уже отлетела из-за отсутствия поддержки, поскольку автор давно забросил свой проект. Но даже раньше, когда это все было еще актуально, на мой взгляд, тянуть всего несколько сайтов с большим количеством кейвордов и раздутой БД такому доргену было крайне тяжко.
Сегодня подготовил небольшое обновление для TrinityThunder, в него вошли:
- дополнительные парсеры подсказок
- дополнительный парсер поисковика
- улучшение парсинга всех поисковиков за счет некоторых твиков
- возможность парсинга поисковиков через TOR

Обновление бесплатное, покупатели могут заменить файлы index.php, config.php, текстовый файл из папки '777/cache', а также файл 'manual.html' из папки 'manual'.
Подготовил небольшое бесплатное обновление для TrinityThunder. В него вошли следующие изменения:
- обновление мануала по части настройки VPS
- сохранение оригинальных атрибутов alt, title, height, width для картинок в статьях (в пустые alt и title будет вставляться кейворд)
- усовершенствование функции подключения внешних БД
- добавление шаблона генерации статьи из БД, созданной с помощью ContentBox
- возможность отключения страниц внешнего ключевого слова
- возможность задать количество повторных попыток при неудачном парсинге сниппетов
- возможность парсить сниппеты через переводчик
- возможность маскироваться под Googlebot при парсинге статей

В некоторых нишах выдача забита дорвеями, которые показывают гуглботу контент, а посетителей сразу редиректят на партнерку, из-за чего распарсить их не удается. Большинство таких дорвеев имеют примитивный клоакинг, который легко обойти с помощью подмены юзерагента (и кое-чего еще), для этого и предусмотрена маскировка под Googlebot. А вот с моим TrinityAntibotCloak такие фокусы не пройдут)

Для обновления замените:
- config.php
- index.php
- key_page.php из папки с дефолтным шаблоном
- папку manual

После обновлений и подгрузок своих кейвордов\БД обязательно чекайте логи ошибок 1-2 привязанных сайтов, чтобы быть уверенными, что все прошло удачно.
Подготовил небольшие бесплатные обновления для доргенов.

В конфиги обоих доргенов добавлена опция для ручного задания протокола. Когда ваш сайт проксируется через Cloudflare, в браузере вы видите, что он имеет протокол 'https', но ваш сервер и дорген об этом не знают. В таком случае, вам нужно указать протокол 'https' вручную, тогда парсер будет пропускать картинки с сайтов без SSL для предупреждения появления алерта о смешанном контенте. Это касается только тех, кто использует CloudFlare. Если вы выпускаете SSL-сертификаты самостоятельно, то менять ничего не нужно, парсер все поймет автоматически.

TrinityThunder:
- улучшения в работе парсера сниппетов
- добавлена опция отключения парсинга таблиц, т.к. иногда попадаются широкие таблицы, которые не влазят в узкий шаблон, из-за чего html-разметка может съезжать
Для обновления замените index.php, config.php, текстовый файл из папки cache, а также key_page.php в папке с шаблоном.

TrinityCPAGen:
- улучшения в работе парсера сниппетов
- измененем title и meta_description на странице товара
Для обновления замените index.php, config.php, текстовый файл из папки cache, а также key_page.php и prod_page.php в папке с шаблоном.
Внес небольшие правки в файлы 'key_page.php' и 'prod_page.php' из папки с шаблоном TrinityCPAGen. Генерацию title и meta_description перенес в конец шаблона и сделал более продуманной. Обратите внимание на то, как теперь генерируются эти теги.
Небольшое обновление для рандомизатора шаблонов TrinityTemplateRandomizer:
-) более гибкие настройки в конфиге;
-) более широкий охват рандомизации;
-) изменение названий переменных;
-) уникализация исходного кода svg-изображений (пример выше);

Благдарю всех за обратную связь, обновленные файлы размещены на Диске.
Статистика изменений в css-файле тестового шаблона подтверждает улучшения. Получилось даже больше 100%, т.к. помимо общей рандомизации были удалены старые комментарии и добавлено несколько новых случайных.
Релиз доргена TrinityAdultTubes[XVideos] - стоимость 9000 руб.

https://trinityscripts.blogspot.com/2023/03/trinityadulttubesxvideos-php-xvideos.html
Небольшое бесплатное обновление для TrinityTemplateRandomizer:
- в мануал добавлены советы по работе со скриптом
- изменены настройки вставки комментариев - теперь вместо количества задается вероятность
- вставка комментариев и минификация больше не затрагивают php-код

Обновленные файлы загружены на Диск.
Вышла новая версия доргена TrinityAdultTubes:
https://trinityscripts.blogspot.com/2023/03/trinityadulttubesxvideos-php-xvideos.html

Теперь стоимость доргена составляет 12000 руб. Все купившие дорген ранее могут получить обновление доплатив разницу в стоимости.

Новая версия имеет два основных отличия:

1) Теперь дорген не ограничен видеороликами с одного только сайта XVideos. Добавлена возможность объединить базу XVideos с еще четырьмя крупнейшими XXX-тьюбами. Объединенная база насчитывает около 26 миллионов видеороликов.

2) Теперь видео сортируются не только по категориям, а также и по разделам (Straight, Gay, Trans). Из Гугла пользователь будет попадать именно в тот раздел сайта, к которому относится найденное им видео. Следовательно, он будет видеть в перелинковке только тематические видеоролики, а также только те баннеры, которые вы определелили для показа в данном разделе сайта (например, в разделе для геев будут показываться баннеры, соответствующие гейским офферам).