Нашёл эту информацию на сайте http://www.a-xyle.com/. Хоть статья и старовата, но она до сих пор актуальна.
iMacros – программа или дополнение для браузера при помощи которого вы сможете выполнять одни и те же действия сколько угодно раз.
Что есть iMacros
Подробно это описано тут. А по русски это неплохой инструмент для автоматизации всей вашей рутинной работы в вэбе. Возможно кто-нить слышал о таких инструментах как TestComplete, WinRunner, QuickTest и тому подобное. Они применяются при автоматизировании тестирования разнообразных приложений, и позволяют имитировать, сейчас, фактически все действия которые может совершать пользователь. iMacros можно сказать их младший брат в плане автоматизации работы интернет браузера (Firefox и IE), к тому же по сравнению с продуктами "гигантами" не требует полностью всей машины(предыдущие забирают себе весь экран, что необходимо для некоторых задач, но в частности для вэба не нужно и даже мешает, если у вас конечно не завалялся свободный комп). Ну и стоимость лицензии вышеперечисленного конечно пугает))
В "нашем" деле (СЕО) до кучи задач котрые надо делать много раз подряд (что мало того, что очень выдрачивает, так еще и время отнимает): регистрация разнообразных аккаунтов, постинг по социальным сетям, закачка файлов через вэб-интерфейс, массовое изменение ссылок на страницах без фтп доступа, накрутка всего и вся, создание однотипных сполгов и т.д. и т.п. И постоянно хочется от всего этого отделатся и просто нажимать на кнопку и забыть. Полностью конечно не получится но частично можно.
Что может iMacros
Вот что пишут разработчики продукта (в моем довольно вольном переводе, только то что важно для нас): Все что бы вы ни делали с помощью браузера, может быть автоматизировано с помощью iMacros.
- Автоматизация навигации по вэб-страницам
iMacros позволяет записывать и проигрывать повторяющиеся действия. iMacros может работать с любыми сайтами. Возможности: заполнение форм, скачивание\закачивание текста, изображений, файлов и вэб-страниц, импорт\экспорт данных из\в CSV и XML файлы(ов), баз данных и в принципе работа с любым источником. Поддержка работы с PDF документами, снятие скриншотов экрана, симуляция различных юзер-агентов, поддержка работы через прокси.
- Скриптовый интерфейс
Интерфейс к iMacros дает вам полный контроль над вэб браузером. Таким образом iMacros может использоватся совместно с любым языком сценариев, либо полноценным языком программирования.
- Поддержка Юникода
Что дает возможность работать со страницами и данными на любых языках.
- DirectScreen технология
Позволяет автомтаизировать работу со страницами содержащими JavaScript, Java, AJAX, Flash и т.п. Релизовано за счет записи координат кликов и перемещиения мыши.
- Менеджер паролей
Ну тут думаю все ястно - аля Robotask.
- Плагин распознавания изображений
Гуглокапчи он не разберет конечно, но что-нить совсем тривиальное разбирать можно. По сути там просто сохраняешь эскизы того что должно быть и сравниваешь.
В основном все, дальше тонкости. Замечу только что конечно же за самые замечательные и нужные возможности нужно платить и причем желательно за Scripting Edition...
Приступим
Идем сюда и качаем то больше хочется. Я думаю лучше подойдет версия для Firefox или 30 дневный триал полного iMacros.
Ставим себе, тут можно немного полистать че там как обстоит (сильно увлекатся не стоит))). После перезапуска FireFox жмем F8 и о чудо! Вылазит панель (аля как на рисунке). Некоторое время созерцаем ее, тыкаем всюду, запускаем присутствующие скрипты и вообще осваиваемся. Продукт все же немного глючноватый и в плане юзабилити мне сначала был непривычен. Советую так же сразу после установки в опциях на закладке Paths определить какие-нить человеческие удобные директории а не пресловыутый Program Files/заебешься/сюда/заходить. Так же рекомендую сразу создавать папки по каждый новый пакет скриптов.
Про все пристутствующие кнопки и тому подобный бред я рассказвывать не буду - у них названия понятные вполне.
Для примера приведу 3 скрипта для propeller.com: подписка статей, голосование за 1 статью множеством пользователей, голосование одним пользователем за множество статей.
Первый нах. Для особливо непонятливых распишу. Идем на пропеллер, логинимся, жмем добавить историю (стой! не бросай читать) и записываем процедуру сабмита статьи с помощбю кнопки (какой бы вы думали?) "Запись" до момента нажатия на кнопку "Check my story" в пропеллере. Тут жмем остановить запись и открываем файл "#Current.iim" на редактирование, в нем примерно следующее:
VERSION BUILD=6030318 RECORDER=FX
TAB T=1
URL GOTO=http://www.propeller.com/submit
'Это урл
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:submitstory ATTR=ID:storyUrl CONTENT=http://sdfsdf
'Это название статьи
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:submitstory ATTR=ID:storyTitle CONTENT=dsfsadfadsf
'Это текст статьи
TAG POS=1 TYPE=TEXTAREA FORM=NAME:submitstory ATTR=ID:storyText CONTENT=sdsafdsfasdf
'Это канал (из списка, выбирается по номерам)
TAG POS=1 TYPE=SELECT FORM=NAME:submitstory ATTR=ID:storyChannel CONTENT=$31
'Это тэги
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:submitstory ATTR=ID:storyTags CONTENT=dasfadsfadsf
'Это нажимание на кнопку сабмита
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:submitstory ATTR=ID:storySubmitButtonTop&&VALUE:Check<SP>My<SP>Story
Создаем папку(в имакросе) propeller например. Сохраняем это чудо под каким-нить названием, например propeller_post_article.iim.
Далее нужно создать какой-нить файл с данными для статей и поместить его в директорию "datasources" iMacros'а (она в опциях у вас прписана).
Например назовем его propeller_articles.csv, а в него кладем такой текст:
"http://a-xyle.com","A xyle: iMacros","Seo blog for you","26","seo, blog, xyle, ti, palish"
Тут по порядку идут все нужные данные для полей, которые есть выше в коде. Открываем сохраненный ранее скрипт и вписываем туда после "TAB T=1" что то типа
'Подключаем файл с данными о статье
CMDLINE !DATASOURCE propeller_articles.csv
'Количество полей в файле - в нашем случае 5
SET !DATASOURCE_COLUMNS 5
'строка с которой будет начинатся перебор, ну с первой и надо начинать
SET !LOOP 1
'Команда счетчика вообщем, при увеличении LOOP будет переходит на следующую строку
SET !DATASOURCE_LINE {{!LOOP}}
Все тэги с аттрибутом INPUT в скрипте приводим к вот такому виду (COL'ы вместо явного указания данных для ввода, что означает соответствующий элемент из строки из файла данных):
'Это урл
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:submitstory ATTR=ID:storyUrl CONTENT={{!COL1}}
'Это название статьи
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:submitstory ATTR=ID:storyTitle CONTENT={{!COL2}}
'Это текст статьи
TAG POS=1 TYPE=TEXTAREA FORM=NAME:submitstory ATTR=ID:storyText CONTENT={{!COL3}}
'Это канал (из списка, выбирается по номерам)
TAG POS=1 TYPE=SELECT FORM=NAME:submitstory ATTR=ID:storyChannel CONTENT=${{!COL4}}
'Это тэги
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:submitstory ATTR=ID:storyTags CONTENT={{!COL5}}
Так как подписка в пропеллере осуществляется в 2 этапа то в конце надо добавить еще нажатие на кнопку "Submit this story", это так же можно записать и добавить в конец скрипта:
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:submitstory ATTR=ID:storySubmitButtonTop&&VALUE:Submit<SP>this<SP>Story
Вот что мы получим в итоге:
VERSION BUILD=6030318 RECORDER=FX
TAB T=1
'Подключаем файл с данными о статье
CMDLINE !DATASOURCE propeller_articles.csv
'Количество полей в файле - в нашем случае 5
SET !DATASOURCE_COLUMNS 5
'строка с которой будет начинатся перебор, ну с первой и надо начинать
SET !LOOP 1
'Команда счетчика вообщем, при увеличении LOOP будет переходит на следующую строку
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=http://www.propeller.com/submit
'Это урл
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:submitstory ATTR=ID:storyUrl CONTENT={{!COL1}}
'Это название статьи
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:submitstory ATTR=ID:storyTitle CONTENT={{!COL2}}
'Это текст статьи
TAG POS=1 TYPE=TEXTAREA FORM=NAME:submitstory ATTR=ID:storyText CONTENT={{!COL3}}
'Это канал (из списка, выбирается по номерам)
TAG POS=1 TYPE=SELECT FORM=NAME:submitstory ATTR=ID:storyChannel CONTENT=${{!COL4}}
'Это тэги
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:submitstory ATTR=ID:storyTags CONTENT={{!COL5}}
'Это нажимание на кнопку сабмита
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:submitstory ATTR=ID:storySubmitButtonTop&&VALUE:Check<SP>My<SP>Story
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:submitstory ATTR=ID:storySubmitButtonTop&&VALUE:Submit<SP>this<SP>Story
Все. Можно забить файл с историями и поставить на сабмит на ночь, например (хотя скорее всего бан схлопочете за такую массовость)), если добавить еще использование проксей и задержки, что мне здесь описывать лениво, читаем мануал (улыбаемся и машем))). Вообщем плясать от этого уже можно.
Вот еще пара скриптов в нагрузку, уже без всяких комментариев и т.п.
Голосование одним акком за несколько статей:
VERSION BUILD=6001001 RECORDER=FX
TAB T=1
'!!!SET ACCOUNTS DETAILS HERE!!!
SET !VAR1 username
SET !VAR2 password
'!!!SET URLS FILE HERE!!!
CMDLINE !DATASOURCE urls.csv
'Number of columns in the CSV file. This must be accurate!
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
'Increase the current position in the file with each loop
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=https://www.propeller.com/signin/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:nsform ATTR=NAME:alias CONTENT={{!VAR1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUTASSWORD FORM=NAME:nsform ATTR=NAMEwd CONTENT={{!VAR2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:nsform ATTR=NAME:formsubmit&&VALUE:Sign<SP>In
URL GOTO={{!COL1}}
TAG POS=1 TYPE=A ATTR=TXT:Vote!
URL GOTO=http://www.propeller.com/signout
VAR1 - имя пользователя, VAR2 - пароль. В файле urls.csv лежат урлы статей по урлу на строку.
Голосование несколькими акками за одну статью:
VERSION BUILD=6001001 RECORDER=FX
TAB T=1
'!!!SET STORY URL HERE!!!
SET !VAR1 http://news.propeller.com/story/2008/03/18/evanescence-lyrics/
'!!!SET ACCOUNTS FILE HERE!!!
CMDLINE !DATASOURCE accs_prop.csv
'Number of columns in the CSV file. This must be accurate!
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
'Increase the current position in the file with each loop
SET !DATASOURCE_LINE {{!LOOP}}
FILTER TYPE=IMAGES STATUS=ON
URL GOTO=https://www.propeller.com/signin/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:nsform ATTR=NAME:alias CONTENT={{!COL1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:nsform ATTR=NAME:pwd CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:nsform ATTR=NAME:formsubmit&&VALUE:Sign<SP>In
URL GOTO={{!VAR1}}
TAG POS=1 TYPE=A ATTR=TXT:Vote!
WAIT SECONDS=3
URL GOTO=http://www.propeller.com/signout
VAR1 - урл статьи за которую голосовать. В файле accs_prop.csv должны лежать акки в формате username,password по одному на строку.
Комментариев нет:
Отправить комментарий