Проверка Переменной Zennoposter

Рассмотрим использование методов расширения на примере проверки входных настроек шаблона. Проверка входных настроек при запуске является хорошей практикой разработки шаблона. Она несет следующие преимущества: Если какие-то данные введены не правильно, нужно оповестить об этом в логе и прекратить дальнейшее выполнение шаблона.
Для этого в библиотеке есть набор методов расширения для локальных переменных. Методы можно соединять в цепочки вызовов для проверки переменной на соответствие нескольким условиям. Здесь проверяются сразу 3 различных ситуации: Задал ли вообще пользователь файл с аккаунтами.
Если файл задан, переходим ко второму шагу. Существует ли такой файл. Если файл существует, переходим к третьему шагу. Есть ли в файле содержимое. В случае если какое-то условие не выполнено, будет выведено Warning сообщение в лог и выкинуто исключение экшн завершится по ветви BadEnd.
Сообщение можно не указывать, тогда будет выдано исключение с сообщение по умолчанию. Но ваши сообщения помогут пользователю лучше понять в чем именно проблема. А вот как выглядит логика проверки без использования библиотеки. Как видите, код получился 2 раза больше, читаемость кода хуже, а если понадобится проверить еще несколько переменных, то проверка и вовсе станет огромной.
К тому же поддерживать такой код будет сложнее - если вы захотите изменить логирование, придется менять его во всех местах. Мультилогер В библиотеке представлен класс MultiLogger который позволяет удобно логировать в несколько мест одновременно. Одной строчкой кода вы можете записать сообщение в файл, вывести его пользователю в виде MessageBox и в лог ZennoPoster. Также можно добавить в мультилогер свой вариант логирования, например, в БД.
Менеджер аккаунтов Практически каждый шаблон выполняет работу с аккаунтами, который предоставляет пользователь. Менеджер аккаунтов призван решить проблемы многопоточной работы со списком аккаунтов, а также позволить закреплять ваши данные за аккаунтами, например, прокси. Особенности ————————————————————————————————— - Файл аккаунтов не подвергается изменениям - Для файла аккаунтов создается свой файл конфигурации, в котором содержатся все необходимые данные для последовательного выполнения аккаунтов как при работе в одном, так и в нескольких потоках - Аккаунты для работы распределяются равномерно - не возникнет такой ситуации, что один аккаунт отработает 10 раз, а другой 15 - Для каждого аккаунта можно сохранять дополнительную информацию Менеджер браузера Менеджер браузера позволяет генерировать и применять различные параметры браузера, а также сохранять их для последующего использования с аккаунтом.
Теперь в ссылке вида https: После выполнения, мы попадаем на страницу редактирования мета-тегов. Аналогично как мы учили софт заполнять форму авторизации, добавляем заполнение формы с title и её отправку. Делаем исполнение цикличным и смотрим, как компьютер работает за нас!
Поначалу это кажется сложным и непонятным, но потратив пару часов на изучение, вы сможете делать это гораздо быстрее и решать множество других задач. Например, владелец сайта планирует начать продвижение в нескольких регионах.
Для этого были созданы региональные поддоменны, и залиты точные копии основного сайта. Не лучшее решение, но лучше, чем ничего. Наша задача состоит в том, чтобы прописать топоним во всех title товаров и категориях.
Потом затереть все SEO тексты, предварительно собрав размешенные для генерации заданий копирайтеру. А потом готовые переписанные тексты вернуть на прежнее место. Сколько, по-вашему, займёт эта работа? Всего пару часов на настройку Zennoposter! Настраиваем автоматическую авторизацию в админке: Принцип тот же, что и раньше.
Из админки получаем список ID разделов: Эти данные используем для генерации ссылки на редактирование: Вместо выделенного ID нужно подставить вывод переменной: В итоге в визуальном конструкторе мы получим кубик, который положит текст в переменную, где его уже можно обработать, как душе угодно.
Мы же его сохраним в таблицу. Теперь текст нужно затереть, поскольку он неуникальный, так как выводится на основном домене. Для этого делаем все, как и прежде для получения данных, но вместо Get выбираем пункт Set: В итоге при исполнении этого кубика в значение формы будет передана пустота.
Все остальные поля, которые необходимо изменить обрабатываем по аналогии: Потом делаем уведомление, что раздел обработан и увеличиваем счетчик цикла. Запускаем и ждём пока Зенно закончит править тайтлы и дискрипшены у категорий и товарки и удалять seo-тексты. Итак, у нас разделов. За константу берем на ручную обработку одного раздела 4 минуты.
Получается 60 часов рутинной работы, от которой могут повеситься даже самые стойкие контент-менеджеры. При этом не исключена вероятность ошибок. И в заключение могу сказать, что данная статья — это лишь вводная часть. Zennoposter — многофункциональный инструмент, с его помощью можно автоматизировать почти любое рутинное действие. Поэтому в будущем, если данный пост вы оцените, я постараюсь выложить сюда ещё пару полезных постов по автоматизации seo-задач. На этом все, друзья.
Артем обещал написать продолжение, если вам это интересно. Так что задаем вопросы в комментариях! С уважением, Александр Алаев. Для того, чтобы шаблон, который выполняет непосредственно задачу регистрации аккаунтов не находился постоянно в работе, так как он использует браузер и потребляет больше ресурсов, мы вводим понятие пользовательской сессии.
Сессия будет открываться после получения проверяющим шаблоном соответствующей команды на начало работы. В случае открытой сессии первый шаблон передает все команды шаблону сессии, если активной сессии нет, то обрабатывает сам. Возможные варианты мы покажем пользователю в виде всплывающей клавиатуры. На неизвестный запрос мы также запрограммируем отдельный текст. Подробней работа шаблона проверки будет описана далее.
Как уже было упомянуто выше, необходим также шаблон работы с сессией. Данный шаблон будет запрашивать от пользователя необходимые данные, такие как номер телефона и ввода кода и передавать их шаблонам, отвечающим за ввод этих данных на целевом сайте.
Кроме того, будет некоторое количество служебных команд, например, повторный запрос кода, начало работы с новым номером, принудительное закрытие сессии и так далее. Сам шаблон регистратора мы разобьем на 2 части, первая часть будет отрабатывать регистрацию и ввод номера и отрабатывать до момента запроса кода, после чего возвращаться в шаблон сессии. Далее шаблон сессии запрашивает у пользователя код подтверждения, после получения которого, вторая часть исполняющего шаблона будет пытаться ввести этот код.
Шаблон проверки новых сообщений Как уже говорилось выше, данный шаблон шлет с максимальной частотой запросы к api телеграма, для проверки входящих сообщений от пользователей: Далее на всякий случай стоит проверка на успешный ответ, делается это простой регуляркой "ok":.
Очень редко, но случается, что запрос уходит со сбоем, поэтому рекомендую все-таки ставить бесконечное количество запусков этому шаблону, а не один. Ответы телеграм шлет в формате json, на момент написания шаблонов функционала парсинга не было, поэтому я собирал все регуляркой.
Напишем нашему боту любой текст, посмотрим, что мы получаем от телеграма в ответе: Далее мы видим ID пользователя, это очень важный параметр, указывая его в команде ответа телеграм знает, какому пользователю отправить то или иное сообщение. Имя и фамилию и ник пользователя мы опустим, но может кому-то понадобятся эти данные.
Тип сообщения и дата нам тоже не понадобится. Поле Text это собственно то, что отправил нам пользователь, по нему мы будем определять, что же делать дальше с поступившими данными. Этот файл без нижнего прочерка будет постоянно очищаться шаблоном работы с сессией. Чтобы исключить из базы повторения строк делаем следующее: Удалить текст по регулярному выражению В этом примере показано, как из файла удалить строки, содержащие определенный текст.
ЦИКЛЫ Взятие строк по порядку без удаления В этом шаблоне описывается пример взятия строк из файла по-порядку без удаления.
Шаблон будет повторять действия, пока не закончатся строки в указанном файле. В примере стоит макрос alert, у вас будут стоять действия, которые вы собирались совершать со взятой строкой.
Если никаких действий не ставить тут, то шаблон закончится по ошибке. Цикл с указанным количеством повторений В этом шаблоне описывается пример цикла, при построении которого точно известно количество повторений в нашем примере 5 раз.
Здесь вводим текст в поисковик Google, ищем ключевое слово на странице, если текст не найден переходим на следующую страницу выдачи. Аналогично первому примеру цикла пропарсенный текст сравниваем с пустым значением.
1/11/ · Для работы нам потребуется либо Zennoposter версии стандарт и выше (нужно минимум 2 потока), либо зеннобокс, также купленный через лицензию стандарт и выше, т.к. потребуется добавлять несколько. [+] ZennoPoster добавлен в белый список многих антиврусных компаний, теперь антивирусы не должны портить файлы при установке и мешать работе. Watch video · ZennoPoster 5 предназначен для SEO-специалистов, вебмастеров и людей, занимающихся активной деятельностью в интернете.
Предыдущая статья: спам бот приложение android
Следующая статья: создать бот вконтакте