Полезная информация

Общайтесь со знакомыми и друзьями в нашем сообществе в Facebook.
  • Форумы
  •  » iMacros
  •  » Цикл чтения построчно из тхт файла.

№115-03-2018 14:44:56

barts
Участник
 
Группа: Members
Зарегистрирован: 15-03-2018
Сообщений: 1
UA: Firefox 52.0

Цикл чтения построчно из тхт файла.

Помогите разобраться.
Требуется прочитать первую строку из тхт файла и вставить ее в форму. Затем прочитать вторую строку и вставить ее в другую форму. Затем третью и четвертую строку и так далее.

скрытый текст

Выделить код

Код:

VERSION BUILD=9030808
SET !ERRORIGNORE YES
SET !DATASOURCE C:\\iMacros\\Macros\\тест\\nt.txt
SET !DATASOURCE_LINE {{!LOOP2}}
SET !LOOP 1
URL GOTO=https://account.mail.ru/signup?from=navi&lang=ru_RU&siteid=169&rnd=3052698
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:signup ATTR=NAME:firstname CONTENT={{!COL1}}
SET !LOOP 2
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:signup ATTR=NAME:lastname CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:signup ATTR=NAME:firstname CONTENT=
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:signup ATTR=NAME:lastname CONTENT=


любой код, публикуется в тегах code под спойлером
Получается так: первая и вторая строка считывается и вставляется, а затем третья строка вставляется в первую и вторую форму.


InfSub

Отсутствует

 

№217-04-2018 05:09:08

InfSub
iMacroModer
 
Группа: Moderators
Откуда: DeepTown
Зарегистрирован: 13-05-2013
Сообщений: 3112
UA: Chrome 65.0
Веб-сайт

Re: Цикл чтения построчно из тхт файла.

barts пишет:

VERSION BUILD=9030808

установите версию 8.9.7, являющуюся самой стабильной на данный момент и запретите обновление - дабы избежать большинства глюков данной версии

barts пишет:

SET !ERRORIGNORE YES

удалите эту строку для отладки и обнаружения ошибок, например:

barts пишет:

{{!LOOP2}}

такой переменной не может существовать в принципе

barts пишет:

SET !LOOP 2

читайте что такое !LOOP  и как он работает, явно не так как вы пытаетесь его использовать

к сути вопроса: а собственно где в коде 3 и 4 строка, я вижу повторение 1 и 2


Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox

на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!

Отсутствует

 

№305-06-2018 13:48:08

Scorp1978
Участник
 
Группа: Members
Зарегистрирован: 03-11-2016
Сообщений: 83
UA: IE 11.0

Re: Цикл чтения построчно из тхт файла.

держи функцию, в цикле к ней обращаешься и по строчно выдергиваешь строки

скрытый текст

Выделить код

Код:

function ReadFile(zpar1,zpar2){
//par1 - номер строки которую надо считать
//par2 - полный путь до файла
if (zpar2 ==""){return false};
for(yq=1;yq<=50;yq++){
 iimPlayCode('SET !DATASOURCE '+zpar2+'\nSET !DATASOURCE_LINE '+yq+'\nSET !EXTRACT {{!COL1}}');
 var a=iimGetExtract();
 text=a.split('\n');
 if (yq==zpar1){return text};
 }
return;
}

Отсутствует

 

№405-06-2018 14:47:34

InfSub
iMacroModer
 
Группа: Moderators
Откуда: DeepTown
Зарегистрирован: 13-05-2013
Сообщений: 3112
UA: Chrome 67.0
Веб-сайт

Re: Цикл чтения построчно из тхт файла.

Scorp1978
http://www.kolobok.us/smiles/light_skin/dash3.gif


Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox

на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!

Отсутствует

 

№507-06-2018 12:58:04

InfSub
iMacroModer
 
Группа: Moderators
Откуда: DeepTown
Зарегистрирован: 13-05-2013
Сообщений: 3112
UA: Chrome 67.0
Веб-сайт

Re: Цикл чтения построчно из тхт файла.

Scorp1978

скрытый текст

Выделить код

Код:

alert(ReadFile(1,' ')); // не работает
alert(ReadFile(10,'c:\1.txt')); // опять не работает
alert(ReadFile('','c:\\1.txt')); // и так не работает
alert(ReadFile(10,'c:\\1 1.txt')); // и снова не работает
alert(ReadFile(100,'c:\\1.txt')); // и вновь что-то не так ... вот не задача-то


Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox

на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!

Отсутствует

 

№613-06-2018 14:06:54

Scorp1978
Участник
 
Группа: Members
Зарегистрирован: 03-11-2016
Сообщений: 83
UA: IE 11.0

Re: Цикл чтения построчно из тхт файла.

InfSub, :D:D:D да понял я, понял. Ну что было тем и помог. вот если бы кто подсказал универсальную функцию которая работала бы со всеми вариантами, сразу бы обновил у себя.

Отсутствует

 

№713-06-2018 15:25:39

InfSub
iMacroModer
 
Группа: Moderators
Откуда: DeepTown
Зарегистрирован: 13-05-2013
Сообщений: 3112
UA: Chrome 67.0
Веб-сайт

Re: Цикл чтения построчно из тхт файла.

Scorp1978
что мешает исходя из приведенных мной примеров, исправить хотя бы банальные ошибки?

Добавлено 13-06-2018 15:26:50
тем более, половина примеров сделана только потому, что вы пытаетесь проверить входящие данные, вот только делаете это либо коряво, либо частично

Добавлено 13-06-2018 15:30:33
вот к примеру, мне нужна 51 строка, почему же она ни когда не будет получена из вашей функции? или это free-версия и работает она только с первыми 50 строками? и зачем мне перебор всех 50 строк перед этим? для того чтобы точно сказать, что 51 строка не найдена, даже если она есть?

Добавлено 13-06-2018 15:33:06
про то что csv может содержать, к примеру 2 и более столбцов данных, вы видимо тоже не слышали

Добавлено 13-06-2018 15:35:00

Scorp1978 пишет:

вот если бы кто подсказал универсальную функцию которая работала бы со всеми вариантами, сразу бы обновил у себя.

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

Отредактировано InfSub (13-06-2018 15:35:00)


Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox

на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!

Отсутствует

 

№813-06-2018 15:40:19

Squatter
Участник
 
Группа: Members
Зарегистрирован: 11-05-2017
Сообщений: 71
UA: Chrome 64.0

Re: Цикл чтения построчно из тхт файла.

Как вариант

скрытый текст

Выделить код

Код:

var locPath = "C:\\test.txt";//Полный путь до файла

/********************************* описание функции *********************************/

var readFile = path => imns.FIO.readTextFile(imns.FIO.openNode(path)).match(/^.+/mg);

/********************************** вызов функции ***********************************/

var arr = readFile(locPath);//Вернёт массив всех не пустых строк из файла
window.console.log(arr);

var str_1 = readFile(locPath)[0];//Вернёт первую строку из файла
window.console.log(str_1);

var str_2 = readFile(locPath)[1];//Вернёт вторую строку из файла
window.console.log(str_2);

var str_3 = readFile(locPath)[2];//Вернёт третью строку из файла
window.console.log(str_3);

//и т.д.


Правда для себя так и не определился, хранить в переменной весь текст/массив или каждый раз обращаться к файлу. Делаю по-разному в зависимости от размера файла.

Отсутствует

 
  • Форумы
  •  » iMacros
  •  » Цикл чтения построчно из тхт файла.

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2011 Mozilla Russia
Язык отображения форума: [Русский] [English]