Как брать данные из файла построчно без удаления?

demian

Client
Регистрация
26.09.2011
Сообщения
300
Благодарностей
17
Баллы
18
Как брать данные из файла построчно без удаления?
 

gcomm

Client
Регистрация
01.03.2011
Сообщения
332
Благодарностей
93
Баллы
28
Do Macroses Files & Directories > Count number of lines in a file

Make a loop with a counter to pull your line (use counter execution result to pull line from file)

Do logic operator, if counter is greater/equal to lines in the file the file is finished




This is a counter attached>>>Посмотреть вложение counter_sample.xml
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 883
Баллы
113
При помощи цикла - добавляем счетчик, который будет указывать на необходимый номер строки, и макросом взять строку из файла берем необходимую строку.
{-File.GetString-|-fail.txt-|-{-Counter.Get-|-count1-}-|-false-} Вот так получается.
 

demian

Client
Регистрация
26.09.2011
Сообщения
300
Благодарностей
17
Баллы
18
При помощи цикла - добавляем счетчик, который будет указывать на необходимый номер строки, и макросом взять строку из файла берем необходимую строку.
{-File.GetString-|-fail.txt-|-{-Counter.Get-|-count1-}-|-false-} Вот так получается.
Это все очень сложно для новичка, потому что сразу возникают вопросы, как добавить цикл, в макросах есть 3 или 4 макроса для счетчика, инициализация (зачем она ?) увеличение значения на или в N раз, обращение к счетчику. Как все это использовать неизвестно!
 

mux76

Client
Регистрация
13.12.2010
Сообщения
259
Благодарностей
119
Баллы
43
еще надо логику прикрутить, сначала сосчитав кол-во строчек в файле, и на момент: кол-во строк=значению счетчика, делать выход на нужный шаг, в зависимости от задач :D
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 883
Баллы
113
Это все очень сложно для новичка, потому что сразу возникают вопросы, как добавить цикл, в макросах есть 3 или 4 макроса для счетчика, инициализация (зачем она ?) увеличение значения на или в N раз, обращение к счетчику. Как все это использовать неизвестно!
Если так рассуждать, то вся программа ОЧЕНЬ! сложная! Вопрос был в том, как взять строку без удаления, я обьяснил. Или надо было сказать, что для новичка это очень сложно и всё, тема закрыта? :-)
 

step85

Client
Регистрация
19.02.2010
Сообщения
1 839
Благодарностей
287
Баллы
83
Это все очень сложно для новичка, потому что сразу возникают вопросы, как добавить цикл, в макросах есть 3 или 4 макроса для счетчика, инициализация (зачем она ?) увеличение значения на или в N раз, обращение к счетчику. Как все это использовать неизвестно!
Описание макроса счетчиков можно прочитать здесь - http://help.zennolab.com/ru/v3/zennoposter/counters.htm
Организация цикла - здесь http://help.zennolab.com/ru/v3/zennoposter/cycle.htm
 

iulius

Client
Регистрация
01.10.2011
Сообщения
56
Благодарностей
3
Баллы
8
Описание макроса счетчиков можно прочитать здесь - http://help.zennolab.com/ru/v3/zennoposter/counters.htm
Организация цикла - здесь http://help.zennolab.com/ru/v3/zennoposter/cycle.htm
Возможно у меня траблы с визуализацией контента но почему-то по этим ссылкам текст отсутствует. Темы очень интересные и необходимые, можете подсказать альтернативный источник информаций?
Примного благодарен.
 

step85

Client
Регистрация
19.02.2010
Сообщения
1 839
Благодарностей
287
Баллы
83
Возможно у меня траблы с визуализацией контента но почему-то по этим ссылкам текст отсутствует. Темы очень интересные и необходимые, можете подсказать альтернативный источник информаций?
Примного благодарен.
Все работает. Пробуйте открыть в другом браузере.
 

demian

Client
Регистрация
26.09.2011
Сообщения
300
Благодарностей
17
Баллы
18
А если потоков будет несколько, счетчик должен быть с глобальной переменной?
 

step85

Client
Регистрация
19.02.2010
Сообщения
1 839
Благодарностей
287
Баллы
83

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 883
Баллы
113
Да, если необходимо, чтобы все потоки использовали один счетчик, то необходимо использовать глобальный счетчик.
 

zennoflyer

Client
Регистрация
17.10.2011
Сообщения
21
Благодарностей
0
Баллы
0

LightWood

Moderator
Регистрация
04.11.2010
Сообщения
2 382
Благодарностей
916
Баллы
113
Вариантов много:
-Нужна многопоточность
-Необходимо, что-бы бралось по порядку
-Необходимо, чтобы одна и таже строка не бралась несколько раз, т.к. и при рандомности такое может случиться
 

zennoflyer

Client
Регистрация
17.10.2011
Сообщения
21
Благодарностей
0
Баллы
0
Да, если необходимо, чтобы все потоки использовали один счетчик, то необходимо использовать глобальный счетчик.
Что такое глобальный счетчик, чем он отличается от не глобального?
 

step85

Client
Регистрация
19.02.2010
Сообщения
1 839
Благодарностей
287
Баллы
83
Что такое глобальный счетчик, чем он отличается от не глобального?
Используя обычные счетчики - каждый поток запущенного шаблона будет иметь свои счетчики. А если нужна синхронизация данных между потоками (общий счетчик на все потоки), то используется глобальный счетчик - http://help.zennolab.com/ru/v3/zennoposter/index.html?global_storage.htm
 

perviy

Client
Регистрация
04.12.2011
Сообщения
67
Благодарностей
0
Баллы
6
Как сделать следующее.
Имею строку (их много в файле)

[email protected];login;passw

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

DenMan

Client
Регистрация
02.12.2011
Сообщения
6
Благодарностей
0
Баллы
1
Как сделать следующее.
Имею строку (их много в файле)

[email protected];login;passw

Как заставить программу сначала брать мыло, а потом пароль и логин для активации последующей.
Если так неправильно то подскажите как упростить, на ум приходит сделать три файла и черпать из них по порядку.
Смотрим здесь http://help.zennolab.com/ru/v3/zennoposter/index.html?working_with_strings.htm а именно пункт "Разделение строки"
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 883
Баллы
113
В отдельном шаге берете макросом всю строку. Затем через макрос работа со строками - разделение строки делите её по необходимому символу - в данном случае ;
После такого разделения получаем почту с индексом 0, логин - 1 и пароль 2.
 

perviy

Client
Регистрация
04.12.2011
Сообщения
67
Благодарностей
0
Баллы
6
В отдельном шаге берете макросом всю строку. Затем через макрос работа со строками - разделение строки делите её по необходимому символу - в данном случае ;
После такого разделения получаем почту с индексом 0, логин - 1 и пароль 2.
Предварительно сделав цикл ?
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 883
Баллы
113
Цикл необходим, чтобы, к примеру не повторялись логины с паролями - тогда да, организовываем цикл, вставляем счетчики и делаем, чтобы номером взятой строки был результат выполнения счетчика. Если же это не обязательно, можно просто сделать, чтобы бралась случайная строка (стоит по умолчанию - random) и потом просто делить её.
В последнем случае цикл ненужен. Просто идет строка вида почта:логин:пароль и при делении этой строки по : получим почту с индексом 0, логин - 1 и пароль 2 - это вручную вписывается в макросе.
 

perviy

Client
Регистрация
04.12.2011
Сообщения
67
Благодарностей
0
Баллы
6
Цикл необходим, чтобы, к примеру не повторялись логины с паролями - тогда да, организовываем цикл, вставляем счетчики и делаем, чтобы номером взятой строки был результат выполнения счетчика. Если же это не обязательно, можно просто сделать, чтобы бралась случайная строка (стоит по умолчанию - random) и потом просто делить её.
В последнем случае цикл ненужен. Просто идет строка вида почта:логин:пароль и при делении этой строки по : получим почту с индексом 0, логин - 1 и пароль 2 - это вручную вписывается в макросе.
Спасибо Вам большое, Вы очень помогли!!!
 

perviy

Client
Регистрация
04.12.2011
Сообщения
67
Благодарностей
0
Баллы
6
Если у меня берутся данные рандомом и программа постинга работает в несколько потоков к примеру 20, не получится ли такой сюжет, что разные потоки возьмут одни и тежи данные для регистрации к примеру мыло , логин, пароль?

Запустил шаблон на исполнение, вижу что прокси плохой, да же страница не отображается, но программа пытается что то там выполнить, как остановить этот поток и запустить по новой? Вот скрин http://gyazo.com/073b43e47e8a5312443c1ba82fb39e1b
 

lucian

Client
Регистрация
26.10.2011
Сообщения
214
Благодарностей
45
Баллы
0
Путаницы не будет, если использовать глобальный счетчик, либо брать строки с удалением.

Конкретный инстанс закрыть не получится, поэтому выход такой: поставить таймаут загрузки страницы в начале шаблона (ветка set-webbrowser), указав количество секунд, которое считаете достаточным для загрузки страницы, потом переход на нужную страницу и проверка какого-либо текста, который появляется при загрузке. и логическая ветка - загрузилась страница-отлично, выполняем шаблон. если не загрузилась - шаблон кончается и начинается следующее выполнение с новым прокси.
 

perviy

Client
Регистрация
04.12.2011
Сообщения
67
Благодарностей
0
Баллы
6
Путаницы не будет, если использовать глобальный счетчик, либо брать строки с удалением.

Конкретный инстанс закрыть не получится, поэтому выход такой: поставить таймаут загрузки страницы в начале шаблона (ветка set-webbrowser), указав количество секунд, которое считаете достаточным для загрузки страницы, потом переход на нужную страницу и проверка какого-либо текста, который появляется при загрузке. и логическая ветка - загрузилась страница-отлично, выполняем шаблон. если не загрузилась - шаблон кончается и начинается следующее выполнение с новым прокси.
Спасибо за ответ.

У меня при обработки шаблона грузится интернет IE, выдаёт страницу wordpress.com/#!/read/likes/ почему так происходит?
 

lucian

Client
Регистрация
26.10.2011
Сообщения
214
Благодарностей
45
Баллы
0

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