- Регистрация
- 06.02.2017
- Сообщения
- 132
- Благодарностей
- 412
- Баллы
- 63
Продолжая тему плагинов для ZennoBrowser, которую я затронул в предыдущем конкурсе, хочу представить ещё два решения, направленных на оптимизацию работы этого приложения.
Идеи появились в процессе активного тестирования, где проявился ряд трудностей при совместном использовании ZennoPoster и ZennoBrowser.
Понимаю, что со временем разработчики доработают и расширят функционал, однако потребность в удобных инструментах возникает уже сейчас. Как и у любого другого продукта, всегда будут вопросы и нюансы.
На некоторые из них я получил ответы от разработчиков: их основное внимание сосредоточено на технической части антидетекта, что вполне логично.
При этом реализация прикладных функциональных решений во многом остаётся задачей сообщества.
Ведь каждый пользователь подстраивает инструмент под собственные проекты и задачи, а универсально учесть все потребности невозможно.
Плагин SetCookies.
При разработке одного из шаблонов появилась необходимость массового создания профилей с заранее подгруженными куками. Я потратил немало времени, пытаясь разобраться, как реализовать это в ZennoBrowser, но, к сожалению, в текущей версии ZennoPoster такой возможности не оказалось.
Покопавшись на форуме я наткнулся на тестовую сборку 7.8.10. Решил рискнуть, установить и протестировать её — и у меня всё получилось.
Надеюсь, что полноценное обновление выйдет раньше, чем будет опубликована моя статья.
Так что, если вам нужен функционал создания профилей с куками, можете попробовать эту версию.
1. Функционал плагина.
Сам шаблон не выглядит таким объёмным, как мои предыдущие плагины, но в нём основной акцент сделан на логику и компактность.
Я уже давно стараюсь выносить повторяющиеся из проекта в проект функции в отдельный плагин или сниппет.
Это, прежде всего, экономит время при создании новых решений и избавляет от необходимости рыться в старых архивах в поисках похожей реализации.
- При создании профиля предусмотрено два подхода — с использованием донора или без него. Донорский профиль нужен в первую очередь для того, чтобы внести изменения в базовую конфигурацию, которая предлагается по умолчанию.
В моём случае требовался инстанс с английским интерфейсом (так как в ZennoBrowser по умолчанию установлен русский). Это было важно, потому что в ряде действий можно было зацепиться только за атрибут innerHtml, а при работе через прокси из разных локаций язык интерфейса постоянно менялся.
Кроме того, использование донора открывает возможность экспериментировать с другими настройками, что помогает в обходе защитных механизмов. - После создания профиля мы получаем ответ от ZennoBrowser в формате JSON. Обрабатываем его соответствующим кубиком и получаем ID нашего профиля.
- Переменная с ID после обработки всегда одинакова, поскольку мы создаем только один профиль. Ее и используем в следующем действии при запуске инстанса.
- После того как инстанс запустили, получаем куки из заранее подготовленного файла. На скрине ниже я показал как в моем рабочем шаблоне создается подобный файл. У вас это может быть другое решение.
- Проверив на наличие файла, выполняем загрузку куки в созданный профиль.
- Остается запустить требуемую страницу в вашем рабочем шаблоне и продолжить работать с ней далее.
2. Настройки плагина. - Выбираем режим использования с Донором или без. Если выбирать без донора, то получите профиль со стандартными настройками, с донором можно получить профиль с пользовательскими настройками.
- ID профиля донора можно получить непосредственно в Zennobrowser(подробнее в видео приложенном к статье).
- Выбираем Заменить или Объединить куки.
- Указываем путь к файлу с куками. В рабочем проекте содержимое данного файла меняется и каждый раз подгружаются новые куки.
Плагин Replace Profiles
Второй плагин, на мой взгляд, закрывает действительно важную проблему, связанную с дисковым пространством. Думаю, каждый, кто начинал активно работать с ZennoBrowser, рано или поздно сталкивался с ситуацией, когда массовое создание профилей стремительно «съедает» свободное место на диске.
На первый взгляд кажется, что сами профили занимают немного, но при их большом количестве накопительный эффект становится критичным. В результате диск быстро заполняется, производительность падает, а иногда и сам процесс работы в ZennoPoster/ZennoBrowser тормозится из-за нехватки ресурсов.
Мой плагин как раз направлен на оптимизацию этой области: он помогает контролировать объём используемого пространства, своевременно очищать ненужные данные и тем самым поддерживать стабильность всей системы. Это особенно важно для тех, кто запускает крупные проекты, работает с большим количеством аккаунтов или использует прокси из разных локаций.
В качестве резервного хранилища профилей я решил использовать свой Google Drive. Уже давно держу там архивные данные, фото и видео, а при объёме диска в 2 ТБ он до сих пор заполнен меньше чем на треть. Поэтому логично было разместить там и профили ZennoBrowser — удобно, надёжно и с большим запасом свободного места.
1. Функционал.
- Для контроля состояния свободного пространства на своем рабочем диске я использовал функцию обработки и вывода информации в формате Html. Во первых так удобнее, чем каждый раз заходить и проверять директорию вручную. Информация выводится в инстансе в удобном виде. Более подробно можно посмотреть в видео.
- Далее всплывает окно запроса для принятия решения. Если информация о свободном пространстве вас удовлетворяет нажимаете кнопку Нет и плагин прекращает работу. Если нажимает Да - плагин начинает перенос всех профилей в указанную директорию на диске Google Drive.
- В шаблоне добавлена проверка на исключение. Если используете Донора, то в настройках указываете его ID. Плагин проверяет на соответствие и не удаляет профиль вашего донора, и вы можете и дальше использоватеь его в своей работе.
- По окончанию переноса профилей плагин повторно сканирует ваш диск и директорию с профилями и выводит информацию в инстанс
2. Настройки.
- Директория профилей - путь у всех одинаковый, поскольку ZennoBrowser сам его формирует(за исключением названия пользователя на вашем компьютере).
- Путь к файлу Html. Файл также прикладываю к статье, но вы можете его изменить под свои потребности и поменять дизайн, который будет интересен и удобен вам.
- Резервная директория - в моем случае это папка созданная на диске Google Drive.
- ID донора - получаем из интерфейса ZennoBrowser.
Шаблон данного плагина вместе с файлом Html я также прилагаю к статье, чтобы у вас была возможность доработать его под свои потребности. Работа данного плагина подробно показана во второй части видео к этой статье.
Заключение.
Надеюсь информация будет полезной как для новичков которые не присоединились к данному комьюнити, так и для продвинутых пользователей ZennoBrowser.
Учитывая тот факт, что разработчики не смогут удовлетворить все наши желания по функционалу именно во взаимодействии ZennoPoster с ZennoBrowser, нам все же надо больше обмениваться своими наработками.
Я все же жду и надеюсь что в скором времени нам презентуют API и тогда можно будет более продуктивно поработать используя опыт и навыки по работе с другими антидетектами.
А пока всем удачной работы и успехов.
Вложения
-
90,2 КБ Просмотры: 5
Последнее редактирование: