Imacros. Скрипт web-паука

В данной статье хочу рассказать о том, как в скриптах Imacros происходит чтение из внешнего файла.

Для примера будет использоваться простой скрипт web-паука. Все его действия такие – скрипт ходит по сайтам, после перехода на сайт он останавливается и ждет действий от пользователя.

После нажатия пользователем соответствующей кнопки он продолжит свою работу. В данном случае сам код остается неизменным, а текстовой файл с данными можно будет в дальнейшем корректировать – менять урл сайтов на другие.

Данный скрипт также можно использовать как заготовку при написании постера по форумам или комментариев на сайтах.

    VERSION BUILD=8890130 RECORDER=FX
    'В следующих двух строках отключаем контроль ошибок
    SET !ERRORIGNORE YES
    SET !ERRORCONTINUE YES
    TAB T=1
    'Подключаем файл с нужными нам адресами 
    CMDLINE !DATASOURCE url.txt
    'Количество полей в файле 10
    SET !DATASOURCE_COLUMNS 10
    'следующий код указывает с какой строки файла начнется выборка
    SET !LOOP 1
    'При увеличении LOOP будет осуществляться выборка со следующей строки
    SET !DATASOURCE_LINE {{!LOOP}}
    'Следующий код - команда выборки из 1 строки
    URL GOTO={{!COL1}}
    'Пауза - ожидание действий пользователя
    Pause
    'Следующий код - команда выборки из 2 строки
    URL GOTO={{!COL2}}
    Pause
    URL GOTO={{!COL3}}
    Pause
    URL GOTO={{!COL4}}
    Pause
    URL GOTO={{!COL5}}
    Pause
    URL GOTO={{!COL6}}
    Pause
    URL GOTO={{!COL7}}
    Pause
    URL GOTO={{!COL8}}
    Pause
    URL GOTO={{!COL9}}
    Pause
    URL GOTO={{!COL10}}

Так же отключение контроля ошибок в строке 2 и 3 позволит нам избежать остановки скрипта в случае, если сам URL адрес будет недоступен, тогда скрипт после ожидания перейдет в паузу.
Формат файла – url.txt очень простой. В каждой строке по одному адресу.

url

Поле каждого адреса ставится запятая, за исключением последнего URL в списке. В данном случае запятая дает понять понять скрипту о конце строки, служит разделителем.

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

SET !DATASOURCE_DELIMITER ;

Есть еще один способ использовать внутри поля разделитель – заключить его в двойные кавычки.
Если вы пользователь Windows, то такой файл следует писать в текстовом редакторе Notepad++ в кодировке UTF-8 и сохранять в формате без BOOM.

Только тогда вы сможет быть уверены в корректной работе скрипта. Другие текстовые редакторы, работающие под Windows, сохраняют файлы в кодировке Windows-1251. И даже если вы сможете в каком-то найти кодировку UTF-8, то он сохранится с BOOM.

Поэтому советую пользоваться именно этим редактором.
Скачать свежую версию Notepad++ вы сможете по этой ссылке.

1 thought on “Imacros. Скрипт web-паука”

  1. так КОЛы-это столбцы,а не строки))))таким образом максимум получится только 10 столбцов))но как лайфхак -пойдет)))

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *