ONDOWNLOAD

Команда iMacros ONDOWNLOAD

Команда ONDOWNLOAD автоматически обнаруживает и перехватывает загрузки. Используйте команду до начала загрузки, чтобы определить месторасположение и имя сохраняемого файла. Тайм-аут для страницы так же относится и к загрузкам. Убедитесь, что значение времени ожидания достаточное, чтобы файл успел загрузиться.

Обычно имя загружаемого файла создается автоматически, на сервере. Вы можете добавить свои детали к исходному имени файла, используя знак «+» (смотрите примеры ниже). Особо полезна в данном случае встроенная переменная !NOW.

iMacros может посчитать контрольную сумму загруженного файла и сравнить ее со значением параметра CHECKSUM. Вы можете проверить, что загруженные файлы не повреждены, или еще хуже, были заражены вирусом (через взломанный сервер). Поддерживаются контрольные суммы MD5 и SHA1.

Синтаксис:

ONDOWNLOAD FOLDER=папка FILE=имя_файла WAIT=[YES|NO] CHECKSUM=[MD5|SHA:шестнадцатеричная_строка]

или

ONDOWNLOAD CANCEL=YES

Параметры:

  • FOLDER

    • Указывает путь к папке, в которую будет сохранен файл. Используйте * для использования стандартной папки загрузки iMacros, которая указана в настройках.

    • Обратите внимание, что пробелы в пути нужно заменить на <SP>: C:\Моя<SP>папка (вместо C:\Моя папка).

  • FILE

    • Задает имя файла, под которым файл будет сохранен. Если расширения файла не задано, то используется значение по умолчанию. Используйте * чтобы оставить имя файла без изменений. Используйте + для того, чтобы добавить дополнительную информацию к исходному имени файла (перед расширением файла), зачастую добавляют временную метку !NOW.

  • WAIT

    • Указывает, должен ли iMacros ждать завершения загрузки (WAIT=YES) или продолжить выполнять макрос без ожидания (WAIT=NO), по умолчанию YES.

  • CHECKSUM

    • Вычисляет контрольную сумму загруженного файла и сравнивает ее с заданным значением (в виде шестнадцатеричной строки), используется либо MD5 или SHA-1 хэш-функции. Примечание: для работы CHECKSUM нужно WAIT=YES.

    • CANCEL Останавливает автоматическую загрузку с сайтов. Обратите внимание, что параметр CANCEL реализован в iMacros Browser v9.01 и выше.

Примеры:

Предположим, вы хотите скачать файл, который называется setup.exe. В следующем фрагмете кода ONDOWNLOAD iMacros сохранит этот файл под исходным именем в папку по умолчанию (задана в найстройках):

ONDOWNLOAD FOLDER=* FILE=*

Этот пример сохранит файл в каталоге C:\МояПапка\ под названием myDownload.exe:

ONDOWNLOAD FOLDER=C:\МояПапка\ FILE=myDownload.exe

Еще один пример: команда будет сохранять файл в каталог по умолчанию, к названию файла будет добавлена отметка даты (с помощью переменной !NOW). Получится: setup_110217.exe.

ONDOWNLOAD FOLDER=* FILE=+{{!NOW:ddmmyy}}

Примечание: Символ «+» используется только если вы хотите добавить свой текст к исходному имени файла. В этом случае, «+» должен быть первым символом (FILE=+…). «+» нельзя использовать, если вы хотите объединить несколько переменных. Для того чтобы добавить значения переменных в название файла, просто вставьте их в строку.

Пример:

... FILE=заказ_{{number}}_от{{departement}}.pdf

Вы можете проверить целостность загруженного файла с помощью параметра CHECKSUM. При этом ожидаемая контрольная сумма ранее была рассчитана с помощью функции SHA-1.

ONDOWNLOAD FOLDER=* FILE=* WAIT=YES CHECKSUM=SHA1:3FD97C2EC475731997F7F28CB5C07F3D1A1E820A

В случае, когда вы хотите избежать автоматической загрузки (одного или нескольких) файлов, вы можете использовать параметр CANCEL (строка 1). CANCEL может быть задан только тогда, когда другие параметры в команда не используются. И действует до тех пор, пока не выполнится одна из команд в строке 3 или 4:

ONDOWNLOAD CANCEL=YES ... ONDOWNLOAD CANCEL=NO ONDOWNLOAD FOLDER=... FILE=...

Скачиване PDF файлов:

Пожалуйста, убедитесь что вы отключили или удалите дополнения браузера для обработки PDF файлов, такие как Adobe. После этого браузер предложит вам скачать PDF как обычную загрузку, и теперь iMacros можнет автоматизировать это процесс.

Сайт для тестирования скачивания PDF файла:

http://demo.imacros.net/Automate/PDFdemo

Примечания:

    • После того, как происходит нажатие на скачиваемый файл, должно пройти немного времени перед тем как появится диалоговое окно для загрузки. Если iMacros не может словить это окно или останавливается с ошибкой, в этом случае рекомендую добавить небольшую временную задерку:

      • WAIT SECONDS=2

      • после команды, которая запускает загрузку. Это дает iMacros время ожидания диалогового окна.

      • Параметр WAIT=YES относится к другому ожидания, а именно после того, как загрузка началась он должен ждать ее завершения.

    • При работе с Internet Explorer вам необходимо включить автоматические запросы на загрузку, чтобы избежать появления уведомлений.

    • Необходимо включить показ расширений файлов (в проводнике Windows)! Иначе, ONDOWNLOAD iMacros не сможет переименовать файл, при загрузке, на ваш вариант. Либо используйте * для того чтобы сохранить файл как есть.

    • FOLDER не поддерживает относительный путь, а FILE поддерживает. В случае, если вы хотите загрузить файл в подпапку в стандартной папке iMacros Downloads, вы можете использовать параметр FILE, но вложенная папка должна существовать до начала загрузки файла.

    • Параметр FOLDER может создавать папки, так что, если вы хотите сохранить файл в папку которой еще нет, она должна быть вписана в FOLDER, а не в FILE.

Важные заметки:

    • Максимально допустимое время загрузки устанавливается !TIMEOUT_PAGE (60 сек по умолчанию). Так как оно рассматривается как и максимальное время загрузки, то если вам надо больше времени для загрузки файлов, пожалуйста, увеличьте это значение, например SET !TIMEOUT_PAGE 300. Если загрузка закончится раньше 5 мин (300 сек) макрос продолжит выполняться. В противном случае вы получите ошибку тайм-аута.

    • Если загрузка не началась до конца макроса, тогда ONDOWNLOAD будет ждать дополнительные !TIMEOUT_STEP секунд до остановки с ошибкой -1410: Загрузки не обнаружены.