Операции над профилем
🔗 Оригинальная страница — Источник данного материала
Описание
Для работы в интернете ZennoPoster имеет специальную сущность — Профиль проекта.
Профиль совмещает в себе такие часто используемые параметры, как:
- Виртуальная личность:
- имя,
- фамилия,
- дата рождения,
- e-mail,
- национальность,
- прочие параметры.
- Виртуальный браузер:
- UserAgent,
- Proxy,
- отпечаток браузера и т.д.
По нажатию кнопки «С начала» в ProjectMaker или при новом выполнении проекта в ZennoPoster.
Характеристики для первичной генерации профиля можно настроить в статическом блоке. Там задаётся язык профиля, пол, желаемые регионы, а также параметры браузера.
Как добавить действие в проект?
Через контекстное меню: Добавить действие → Данные → Операции над профилем

Для чего это используется?
Профили можно сохранять и загружать в шаблон и, таким образом, использовать подходящие для работы на различных ресурсах. Это помогает работать с сайтами, где есть защита от ботов.

Чтобы посмотреть Текущий профиль, нужно нажать на соответствующую кнопку в верхней части интерфейса программы.
Подробнее обо всех настройках профиля читайте здесь.
Принцип работы
Сохранение профиля
После регистрации или любых других действий на сайте, которые вы выполняете внутри шаблона, можно сохранить эти данные профиля для последующего использования в других проектах.
В файле профиля \.zpprofile сохраняются все данные инстанса: куки, User Agent, данные о компьютере, имя, фамилия, логин, город и прочее.

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

Для корректного выполнения шаблона сохраняйте только необходимые переменные.
Загрузка профиля
Если у вас есть ранее сохраненные профили, то их можно загрузить для использования в проекте.

Создать недостающие переменные
При включении данной настройки в проекте автоматически будут созданы и добавлены недостающие переменные, которые числятся в профиле. Это полезно, когда вы добавляете в проект профиль, который был сохранен при работе с другим проектом.
Выводить ошибку при загрузке несовместимого профиля
При загрузке профилей, которые были созданы на движке браузера, отличном от движка проекта, проект будет завершаться ошибкой.
Например у вашего текущего проекта движок Firefox 52, а загрузить пытаетесь профиль созданный на движке Chrome. В этом случае вы получите ошибку.
Переназначить поля
Вы можете вручную редактировать составляющие профиля. Для некоторых параметров можно установить свое значение вручную, а для других просто перегенерировать.

Что можно установить?
- Свои UserAgent;
- Желаемые имена, фамилии, даты рождения и прочую информацию о личности;
- Необходимые разрешения для браузера;
- Подходящие логины/пароли/почты;
- Любую другую модернизацию профиля под свои нужды.
Далее в работе можно использовать данные из профиля в других экшенах. Для этого понадобятся макросы из Переменных окружения, например: { -Profile.Name}

{ -Profile.А ProjectMaker предложит все возможные варианты выбора в виде выпадающего списка.

Обновить

Данный экшен будет обновлять текущий профиль на похожий профиль с последней версией браузера.
Он не просто обновляет версию браузера, а целиком заменяет профиль на найденный. Все параметры будут новые, кроме тех по которым производился поиск)

Поиск производится по фильтру проекта и соответствию нового профиля следующим параметрам:
- тип браузера,
- операционная система,
- платформа,
- язык
- разрешение экрана.
ZennoPoster может загрузить до 4000 профилей для поиска подходящего (столько сервер генерирует в сутки), а ProjectMaker — 400.
Сохранить профиль-папку
Данная функция сохранят профиль-папку
Сохранённая профиль-папка будет работать только под вашим Zennolab ID в ZennoPoster/ZennoBox. Переданная другому пользователю — не заработает.

Так же вместе с профиль-папкой можно сохранить текущий прокси проекта и переменные (все или некоторые).
Она может сильно замедлить работу проекта, особенно при многопоточном выполнении. Поэтому мы не рекомендуем часто инициировать сохранение.
Лучшие моменты для сохранения — это хороший и плохой выходы проекта (Good End/Bad End).
Пример использования
Представим ситуацию, что мы работаем с сервисом, в котором есть подписчики. По завершению работы сохраняем в переменную LastActivity нынешние дату и время. Для этого используем экшен Обработка переменных и в поле данных указываем макрос { -TimeNow.Date- }.
В переменной OldSubcribers содержится количество подписчиков, которое мы получили при работе шаблона. А в переменной PhoneNum содержится номер телефона, привязанный к аккаунту.

Сохраняем наш профиль и указываем желаемые переменные для сохранения.

Так как переменные token и UserNameLastSub нам не нужны, мы их не сохраняем.
Доступно с версии 7.3.1.0
Далее мы сможем использовать Загрузку профиля, чтобы получить нужные переменные для собственного логирования действий.
Создадим экшен Оповещение и укажем там следующий текст, задействовав макросы:
Загружен профиль.
Имя профиля: {-Profile.Name-};
Последняя активность профиля: {-Variable.LastActivity-};
Количество подписчиков после предыдущей проверки: {-Variable.OldSubcribers-};
Номер телефона: {-Variable.PhoneNum-}.
На выходе получим такое сообщение в логе:

Дополнительная информация
При сохранении и загрузке профиля можно использовать Пользовательские переменные и сочетать их с Переменными окружения.
Например, при установке следующей строки: {-Project.Directory-}ProfilesZenno\{-Profile.Login-}.zpprofile в Путь к файлу при сохранении профиля. В папке Profiles будет сохранён файл под названием rosenhydo1987.zpprofile.

Папка Profiles будет создана рядом с файлом проекта, если на момент выполнения экшена её не существовало.
Полезные ссылки
- ❗→ Профиль - настройки первичной генерации профиля.
- ❗→ Окно профиля - информация о сгенерированном профиле.
- ❗→ Произвольные числа и строки (Random/Рандом) - для создания логинов;
- ❗→ Операции над списком - для работы со своими списками данных;
- ❗→ Google таблицы (PM) - для работы с перечнями данных;
- ❗→ Обработка текста - для внесения в регулируемые переменные проекта.
- ❗→ Окно переменных