Как реализовать правильное цикличное повторение?

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
Добрый день!

Требуется реализовать фоловинг людей на ресурсе N. Опыта в работе программы - второй день, очень нужна ваша помощь!

Сейчас проект выглядит так (приложил скриншот).

1.png


Авторизация происходит из данных, указанных в InputSetting. Из файла Users, по настройкам, должна браться первая строчка и после использования удалятся. Переход идет по строчке, взятой из файла.

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

Так же строка, которая берется из файла Users не удаляется и скрипт постоянно берет одну и туже строку. Подскажите, пожалуйста, почему так происходит?

Как посоветуете выстроить логику скрипта? Спасибо!
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
Так же строка, которая берется из файла Users не удаляется и скрипт постоянно берет одну и туже строку. Подскажите, пожалуйста, почему так происходит?
Потому что ты не нажал галку "удалить после взятия". Либо потому, что ты не настроил список так, чтобы он сохранял изменения в файл.

Что касается авторизации. Стартуешь проект, проверяешь, можешь ли загрузить профиль к этой учетке. Если нет - авторизируешься и сохраняешь профиль. В дальнейшем при запуске при удачной загрузке профиля благодаря кукам ты уже будешь авторизован. Этот момент нужно будет проверять, например, есть ли на странице поле ввода логина. Если нет - значит мы авторизованы.

Что по циклу, продолжительные циклы делать не лучшая идея. Добавляй по 20-30 друзей, например, и заканчивай выполнение. Это сэкономит ресурсы
 
  • Спасибо
Реакции: Hannes

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
Потому что ты не нажал галку "удалить после взятия". Либо потому, что ты не настроил список так, чтобы он сохранял изменения в файл.
Doc, спасибо, помогло! Не стояла галочка на сохранение изменений в файле.
С профилем буду разбираться. :-)
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 715
Баллы
113
С профилем обязательно разберитесь. Нет смысла логинится на сайт каждый раз когда шаблон стартует)
 
  • Спасибо
Реакции: Hannes

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
С профилем обязательно разберитесь. Нет смысла логинится на сайт каждый раз когда шаблон стартует)
Разобрался, спасибо!

В ProjectMaker шаблон работает отлично, но при попытке запустить в ZennoPoster ничего не происходит. Жму на "Показать", что бы понять что происходит, но ничего не открывается. В чем может быть проблема?

Так же, подскажите пожалуйста, как реализовать проверку на наличие кода на странице. Иногда проект стопится на одном и том же месте, когда не может найти нужную форму и останавливается. Нужно в этом месте сделать проверку на текст ошибки и если она есть, повторить проект с определенного места. Реализовал это через "Взять DOM" - Парсить результат по регулярному выражению - Далее через IF проверка на наличие - А там если есть, то повтор, если нет, то продолжение работы. Правильный алгоритм или лучше делать как-то иначе?
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
Реализовал это через "Взять DOM" - Парсить результат по регулярному выражению - Далее через IF проверка на наличие - А там если есть, то повтор, если нет, то продолжение работы. Правильный алгоритм или лучше делать как-то иначе?
Я бы еще ограничил это лимитом попыток. При каждой попытке увеличивать счетчик. Если он достиг заданного лимита - выход с ошибкой + запись в лог
 
  • Спасибо
Реакции: Hannes

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 715
Баллы
113
В ProjectMaker шаблон работает отлично, но при попытке запустить в ZennoPoster ничего не происходит. Жму на "Показать", что бы понять что происходит, но ничего не открывается. В чем может быть проблема?
Сверните остальные окна) Инстансы будут позади всех остальных.
 
  • Спасибо
Реакции: Hannes

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
Я бы еще ограничил это лимитом попыток. При каждой попытке увеличивать счетчик. Если он достиг заданного лимита - выход с ошибкой + запись в лог
Спасибо. Как раз возникла проблема - проект сбился и почему-то оставил более 30 комментов под одним и тем же постом (нужно 1 пост = 1 коммент)...
Как выявлять и повторять подобные баги? В ProjectMaker повторить не получалось...

Вижу одно решение - избегать цикличностей внутри проекта...
 
Последнее редактирование:

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
Спасибо. Как раз возникла проблема - проект сбился и почему-то оставил более 30 комментов под одним и тем же постом (нужно 1 пост = 1 коммент)...
Как выявлять и повторять подобные баги? В ProjectMaker повторить не получалось...

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

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
я не думаю, что это баг программы. это баг шаблона. Скорее всего ты сделал где-то не ту проверку или что-то не учел. Сделай проверку, оставил ли коммент
Я тоже уверен, что косяк мой, сетую что воспроизвести не получается для исправления. Спасибо, Doc, за помощь! :-)

Пока исправил исключением внутреннего цикла. Будет чуть дольше - зато нагляднее и удобнее.
 

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
Откуда такое дело вылезло? Заполнял форму с помощью IntelliSearch, отметил поле логина и вместе с ним вставилось и выделенное действие в строку поиска форума. Чудеса. :-)
2.png
 

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
Подскажите, в чем проблема может быть и как такую каптчу разгадывать?
3.png
Если запускать по шагам в мейкере, то все показывает. Если "с начала" не по шагам, а быстро, то выдает ошибку.
 
Последнее редактирование:

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
Спасите, друзья, какое регулярное выражение позволит создать работающее регулярное выражение для парсинга (простите за тавтологию)
Есть список пользователей и ссылок на их профили:
начало кода
<td class="alt1Active" align="left" id="u39268"><a href="
u39268 - рандомное значение

Вот что подставлять на место этого рандомного значения в конструкторе регулярок?
Почти все темки пробежал по поиску... :(
 
Последнее редактирование:

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 715
Баллы
113
  • Спасибо
Реакции: Hannes

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