[ПРЕДЛОЖЕНИЕ] Экшн (или сниппет) "Начать воспроизведение шаблона с экшэна"

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63
Было бы очень круто если бы можно было делать так:

У нас есть Bad End.
1.Какой-то экшн дал сбой (выход по отрицательной ветке).
2.Мы к Bad End вешаем нужные нам экшены (например сменить прокси)
3. И вот тут нужно решение как продолжить воспроизведение шаблона с экшена, ID которого мы укажем.

333.jpg
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 706
Баллы
113
а стрелку от последнего экшена на нужный водвести не вариант?
 

СТЕПАН

Moderator
Регистрация
17.03.2013
Сообщения
951
Благодарностей
352
Баллы
63
от последнего экшена на нужный водвести не вариант
Если правильно понял я ТС то каждый раз "нужный" будет разным
 

svaminar

Client
Регистрация
21.08.2013
Сообщения
834
Благодарностей
378
Баллы
63
surrealmix а тебе все равно не пойдет такой вариант.
Вот представь у тебя ошибка в том что после нажатия кнопки сабмит проглючил прокси.
Тебе ж с самого начала нада заполнять страничку после смени прокси. Вводить логин, почту капчу ....
Такой екшен не поможет. ведь если будет такой екшен. Тогда воспроизведения проекта начнется сразу с нажатия на кнопку сабмит. А поля то после обновления странички з другим прокси то не заполнение каптча не разгадана.... Лучше всего отслеживать блоки где может бить ошибка с проксей. К примеру заполнили 1 страничку отправили сабмитом на сервер дальше счетчик ставим на один. Вторая страничка отправлена без ошибки увеличиваем счетчик на 1. А на ветку badend вешай проверку логики. Если счетчик на 1 тогда загружаем с начала блок 1, если 2 тода сразу переходим на блок 2
 

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63
Если у нас например шаблон парсинга сделан чисто из одних гет-запросов?
И после каждого гет-запроса делать проверку живости прокси - гемор.
А делается эта проверка из-за сложности (длины) шаблонов, где ты парсишьь данные, ложишь в список, делаешь какие-то действия, ложиш во 2-й список, затем эти списки объединяешь....... И при этом в шаблоне есть сложный цикл например в 10 итераций.

Вот на скрине показано то, что приходится делать:
http://clip2net.com/s/5J31Wy

СМЫСЛ ЭТОГО ВСЕГО ИЗБЕЖАТЬ УТЕЧКИ СОБРАННЫХ и ОБРАБОТАННЫХ ДАННЫХ ПРИ РАБОТЕ С ПРОКСИ.

Отпишитесь пожалуйста, ясно ли я изложил свои мысли или я только один себя понимаю =)
 

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63
surrealmix а тебе все равно не пойдет такой вариант.
Вот представь у тебя ошибка в том что после нажатия кнопки сабмит проглючил прокси.
Тебе ж с самого начала нада заполнять страничку после смени прокси. Вводить логин, почту капчу ....
Такой екшен не поможет. ведь если будет такой екшен. Тогда воспроизведения проекта начнется сразу с нажатия на кнопку сабмит. А поля то после обновления странички з другим прокси то не заполнение каптча не разгадана.... Лучше всего отслеживать блоки где может бить ошибка с проксей. К примеру заполнили 1 страничку отправили сабмитом на сервер дальше счетчик ставим на один. Вторая страничка отправлена без ошибки увеличиваем счетчик на 1. А на ветку badend вешай проверку логики. Если счетчик на 1 тогда загружаем с начала блок 1, если 2 тода сразу переходим на блок 2
С кнопкой Submit неудачный пример.
Она отработает положительно даже если прокси сдох - и будет выход по удачной ветке.

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

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 706
Баллы
113
Bad end не для зацикливания шаблона создан, а для сохранения данных при возникновении ошибки. Для всего остального нужно организовывать логику внутри шаблона. Тут уже от задач шаблона все зависит. Они очень индивидуальные у всех.
 

Bot_Sculptor

Client
Регистрация
11.06.2012
Сообщения
787
Благодарностей
236
Баллы
43
насколько я понимаю, что нужно, то вот твое решение вроде как:

заведи переменную STATUS
разбей шаблон свой на нужные тебе этапы (модули)
при вхождении алгоритма в определенный модуль, назначай status уникальное нужное значение: status=modul1
дальше , когда ты уходишь по badend, то после него сразу в switch иди
а уже в switch делай нужные исходы
switch var.status ::
case "modul1": иди в нужный экшен или модуль
и т.д.

это все катит в том случае, если я все верно понял (особо не вчитывался, поздно Оо)
 
  • Спасибо
Реакции: surrealmix

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63
насколько я понимаю, что нужно, то вот твое решение вроде как:

заведи переменную STATUS
разбей шаблон свой на нужные тебе этапы (модули)
при вхождении алгоритма в определенный модуль, назначай status уникальное нужное значение: status=modul1
дальше , когда ты уходишь по badend, то после него сразу в switch иди
а уже в switch делай нужные исходы
switch var.status ::
case "modul1": иди в нужный экшен или модуль
и т.д.

это все катит в том случае, если я все верно понял (особо не вчитывался, поздно Оо)
Отличное решение! Спасибо.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)