8.Работа с JavaScript.

 

Пришло время научиться связывать наши отдельные задания в полноценную программу. Тут уже приходит на помощь JavaScript. Отныне мы будем работать только в текстовом файле с расширением .js И код в нем пишется немного по другому:

var per = 1

Мы создали переменную «per» и записали в нее значение — цифру 1

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

var per = ‘Наша первая строка’

можно использовать как двойные кавычки, так и одинарные. Чтоб пока не заморачиваться, договоримся использовать только одинарные.

Теперь для того чтоб использовать строку ‘Наша первая строка’, достаточно просто вызвать в любом месте кода переменную per. Это как бы коробочка в которую что-то ложите  и достаете когда вам нужно.

В такую коробочку можно положить и кусок кода, который написан на языке iMacros. Потом когда мы будем вызывать эту переменную, наш браузер будет выполнять весь код iMacros, который в ней записан. Чтоб это все совершить, вам нужно зайти в нашу папку C:\iMacros\Macros\Обучение и создать там текстовый документ с расширением .js

По умолчанию в Windows закрыт доступ к расширению файла, поэтому у вас могут возникнуть небольшие проблемы. Но они легко решаемы, например вот WINDOWS 7: КАК ПОКАЗАТЬ РАСШИРЕНИЯ ФАЙЛОВ

Назовем наш новый документ «Работа с плейлистами.js»

Теперь вам нужно перезагрузить ваш браузер и в каталоге Обучение появится новый файл «Работа с плейлистами.js» Правой кнопкой на нем\редактировать:

2015-12-08 12-42-27 Винда 7(64x) [Работает] - Oracle VM VirtualBox

Всплыло окно, в котором мы должны писать уже на языке JavaScript. Он немного отличается от языка Imacros. Например комментарии уже нужно писать после двойного слеша(//), а не после одинарной ковычки(‘) как в аймакросе.

Перепишем всю нашу разработку в JavaScript код:

Нажимайте сейф&клозе и запускайте наш скрипт «Работа с плейлистами.js»

Давайте разберем все построчно:

Первые две строки стандартные, их нужно писать всегда так, только переменная может быть другая. Мы объявили переменную в которую будем «впихивать» код аймакрос построчно. того чтоб начать новую строку аймакроса нужно использовать такой способ:

для того чтоб закончить строку и перейти на новую нужно исользовать в конце строки

сама строка аймакроса берется в двойные кавычки.

Обратите внимание что в строке 3 в пути к файлу

мы используем уже двойной обратный слеш. Не будем вдаваться в подробности, это просто такая особенность, которую пока достаточно помнить.

Ну и последние две строки:

обозначают вызов переменной

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

Но что делать если выполнений нужно, скажем, 100 000? Ну а для этого милости прошу, продвигаемся дальше.

Перейти к следующему уроку!

  28 комментариев to “8.Работа с JavaScript.”

  1.  

    Здравствуйте!
    Благодарю за уроки, которые вы даёте всем желающим по аймакросу и ява-скрипам.
    А хотел спросить про прокси. В частности, как связать браузер ТОР с аймакросом так, чтоб ТОР менял пользователя и при этом аймакрос-скрипт продолжал бы работать?
    Проблема в том, что чтобы нормально зарабатывать на сайтах, приходится регистрировать много аккаунтов, это требует часто так же и смену айпи адресов, которые достать бывает проблематично. А браузер ТОР работает через прокси и разными айпи. Но, чтобы поменять айпи адрес, надо сменить пользователя, то есть перезапустить ТОР. А это означает что аймакрос-скрипт завершит цикл и вообще свою работу.
    Вот как можно подружить ТОР-браузер и аймакрос?

    •  

      Спасибо за хороший вопрос. Не использую Тор, потому что это лишняя головная боль. Я предпочитаю покупать анонимные прокси. Для полной анонимности использую связку: смена юзер агента, чистка кэш(в аймакросе команда CLEAR), смена прокси.
      В аймакросе смена прокси возможна командой PROXY ADDRESS но меня такой вариант не очень устраивает, потому что возможны вылеты и залеты.
      Я использую внешнее расширение ProxyTool, и переключаю его через about:config Это гарантия стабильной работы. Прокси и пароль к ним подтягиваю через таблицу. Юзерагент тоже меняю через about:config
      Добавляйте блог в закладки, рассмотрю эти темы во втором курсе.

      •  

        Здравствуйте, спасибо за помощь в информации (многое узнал). ПоДскажите, пожалуйста, как ефективно менять ип, после определенных команд макрос.(К сожалению, еще не изучил js, PROXY ADDRESS= не работает). Спасибо.

  2.  

    TOR — это не головная боль! Это очень удобно там где надо много РАЗНЫХ прокси. В Zennoposter, это прописывается очень просто: указываем в экшене IP-адрес (точно не помню какой). Перед запуском Зенки, запускаем TOR-браузер. И все! Это вся «головная боль».

    Анонимные прокси — вот это головная боль, потому что ДОРОГО. Вас спросили или можно связать TOR с IMACROS, а не хвалить анонимные прокси. Напишите, например, сколько будет стоить 1000-2000 анонимных прокси. А 5000? В TOR — это бесплатно.

    Вы не ответили или можно связать TOR с IMACROS?

    •  

      Я беру 70 анонимных прокси за 3$ на месяц. В принципе этого хватает на сутки для одного скрипта. Иногда использую бесплатные прокси когда нужно слишком большое количество.
      Связать аймакрос и TOR-браузер проблем нет, только что установил на него это расширение. Переключать ай пи еще не пробовал, но думаю это не проблема.
      Почему я для себя сделал вывод что тор «головная боль»:
      Был опыт накручивания простого голосования на сайте с годик назад. Вот почему-то тор там сдыхал после смены примерно 50 ай-пи. Тоесть сразу ай-пи давались свежие, потом попадались уже использованные, и все чаще и чаще. До тех пор пока не заканчивались. Нужно было ждать до следующего дня. В итоге для накрутки 500 голосов, нужно было потратить большое количество дней. Тогда я еще не был знаком с аймакросом. Потом ту же задачу я реализовал на аймакросе. Крутил на бесплатных айпи. При этом крутили и мои соперники по голосованию. В итоге голосование вылилось в соревнование «кто больше накрутит». Я легко мог давать фору и обходить соперников. Это тот случай когда нужно много ай-пи.
      Второй вариант почему нужны анонимные прокси — такие сервисы например как ВК, гугл, да и еще все отальные более менее денежные сервисы четко контролируют страну айпи адреса.
      Я не являюсь большим специалистом в торе, может там и возможны какие-то гибкие настройки. Но если это интересует людей, значит это тоже востребовано. Я обязательно рассмотрю возможности взаимодействия с аймакрос/тор и выложу в блоге. Спасибо что указали на данную необходимость!

      •  

        Здравствуйте! Спасибо, что делитесь информацией. Круто! Очень круто! Затянуло — не то слово! Подскажите, где покупаете прокси за 3 дол? Напишите здесь либо на почту evelina.zayc@gmail.com. Буду ждать Вашего ответа. Спасибо!

        •  

          по 3$ беру тут bit.ly/TipaProxy_com
          Но качество там не очень, хотя для многих проектов то что нужно. Привязки по ай пи нет. Но в поддержку очень сложно достучаться.

  3.  

    Не могу установить расширение файла не выходит на табло с лева Обучение.PL.iim есть все сделал по инструкции для виндомс 7 как показать расширения файлов помогите что делать?

  4.  

    Текстовый документ с расширением .js В каталоге Обучение не устанавливается новый файл «Работа с плейлистами.js» какая причина и как установить Обучение,PL.iim. Current.iim установились

    •  

      Нужно создать файл Работа с плейлистами.js в той же папке. Потом нужно не забыть закрыть и заново открыть расширение аймакрос.

  5.  

    Добрый день! вы напишите по последовательно как установить папку «Работа с плейлистами.js» не получается

  6.  

    Текстовом документе с расширением .js что то нужно написать потом периминовать «Работа с плейлистами.js» всяко побовал не усанавливается iMacuos

  7.  

    Здравствуйте. Я новичок, но Ваши уроки мне очень помогают. Возникла проблема. Мною написан скрипт на сайт http://faucet.btcmonsoon.com/, В imacros он работает двумя командами EVENT TYPE=CLICK SELECTOR=»HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>FORM>DIV:nth-of-type(2)>DIV>INPUT» BUTTON=0 и EVENTS TYPE=KEYPRESS SELECTOR=»HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>FORM>DIV:nth-of-type(2)>DIV>INPUT» CHARS=»3MPYrWUmLGttm6AV8xHeT81XxiZnZGhi7B» , а в javascript не хочет прописывать биткоин кошелек. В javascript следующие команды + «EVENT TYPE=CLICK SELECTOR=’HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>FORM>DIV:nth-of-type(2)>DIV>INPUT’ BUTTON=0» + jsN и + «EVENTS TYPE=KEYPRESS SELECTOR=’HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>FORM>DIV:nth-of-type(2)>DIV>INPUT’ CHARS=’+bitcoin+'» + jsN. В javascript работа со сменой прокси и кошельков. Я понимаю, что лучше Вам выслать полностью два кода, но не знаю Вашей почты

    •  

      Здравствуйте. Видимо вы с кавычками запутались Я бы на вашем месте последнюю строчку попробовал так:
      ‘EVENTS TYPE=KEYPRESS SELECTOR=\»HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>FORM>DIV:nth-of-type(2)>DIV>INPUT\» CHARS=’+bitcoin+jsN
      Возможно тут это код будет неправильно выглядеть, но смысл в том, что попробуйте команду аймакроса взять в одинарные ковычки, а внутри самой команды использовать двойные (как и есть при записи), только их нужно экранировать таким знаком \
      я просто не пойму если у вас и после CHARS= идет двойная ковычка, тогда оконцовка у вас будет такая:
      >DIV>INPUT\» CHARS=\»’+bitcoin+'»‘+jsN

  8.  

    Как тяжело воспринимается пояснения в видео….Никакой системности…куча окон, все мигает открывается закрывается… Дурдом… Тяжелый лектор…

  9.  

    когда сможете выложить инструкцию как макрос связать с тор чтоб он когда необходимо менял личность ?

  10.  

    Блин….не чего не могу поделать,пишет в линии 3 (macro += «URL GOTO=https://www.youtube.com/?gl=UA&hl=ru» + «\n»; // заходим на ютуб) — ошибка.Файл iim отрабатывает отлично, js не хочет….В чем может быть причина??????

  11.  

    Разобрался)))Нашел Вашу подсказку = macro = «SET !ERRORIGNORE YES»+ «\n»))))

  12.  

    здравствуйте скажите что не так прописано одинаковые макросы в iim и js. iim работает,все как положено воспроизводит . а js останавливается на 4 строке и пошет такую ошибку (TypeError: this.dataSource[(line — 1)] is undefined, line 4 (Error code: -1001)
    все форумы перерыл не кто не ответил может вы подскажите вот примеры скриптов джава
    for (i=1;i<=1;i++){
    var macro;
    macro = "CODE:";
    macro += ("CMDLINE !DATASOURCE D:\\FirefoxPortable\\Data\\profile\\iMacros\\Datasources\\zapros.txt") + "\n";
    macro += ("ADD !EXTRACT {{!COL1}}") + "\n";
    iimPlay(macro)
    var zapros = iimGetLastExtract(1)
    iimDisplay('строка '+ i +' запрос '+ zapros)
    macro = "CODE:" + "\n";
    macro += ("URL GOTO=https://www.facebook.com/") + "\n";
    macro += ("TAG POS=1 TYPE=SPAN ATTR=TXT:ГРУППЫ") + "\n";
    macro += ("TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://www.facebook.com/search/top/ ATTR=NAME:q CONTENT={{!COL1}}") + "\n";
    macro += ("TAG POS=1 TYPE=BUTTON FORM=ID:searchBarClickRef ATTR=TXT:Поиск") + "\n";
    macro += ("TAG POS=1 TYPE=DIV ATTR=TXT:Группы") + "\n";
    macro += ("SET !EXTRACT NULL") + "\n";
    iimPlay(macro)
    }

    и iim
    CMDLINE !DATASOURCE D:\\FirefoxPortable\\Data\\profile\\iMacros\\Datasources\\zapros.txt
    ADD !EXTRACT {{!COL1}}
    URL GOTO=https://www.facebook.com/
    TAG POS=1 TYPE=SPAN ATTR=TXT:ГРУППЫ
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://www.facebook.com/search/top/ ATTR=NAME:q CONTENT={{!COL1}}
    TAG POS=1 TYPE=BUTTON FORM=ACTION:https://www.facebook.com/search/top/ ATTR=TXT:Поиск
    TAG POS=1 TYPE=DIV ATTR=TXT:Группы
    SET !EXTRACT NULL

    •  

      Не знаю, нужно разбираться. Попробуйте вставить после
      macro += «CMDLINE !DATASOURCE D:\\FirefoxPortable\\Data\\profile\\iMacros\\Datasources\\zapros.txt» + «\n»;
      строку
      macro += «SET !DATASOURCE_COLUMNS 1» + «\n»;

      если не заработает, не замарачивайтесь с подключением таким образом. Скорее всего у вас стоит другая версия аймаккроса, а не та про которую я писал. Для того чтоб решить ваш вопрос, просто первой строкой заходите на этот файл строкой
      iimPlayCode(‘URL GOTO=file:///D:/FirefoxPortable/Data/profile/iMacros/Datasources/zapros.txt’)
      //и потом выбирайте содержимое файла в переменную
      var zapros = content.document.body.textContent
      Если в данных много строк, то разбейте через .split(‘\n’) на массив, и работайте с ним.

  13.  

    нет он останавливается на этих строках TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://www.facebook.com/search/top/ ATTR=NAME:q CONTENT={{!COL1}}
    TAG POS=1 TYPE=BUTTON FORM=ACTION:https://www.facebook.com/search/top/ ATTR=TXT:Поиск
    просто не пойму почему в iimто все работает

  14.  

    и ваша версия аймакрос для мозилы 47.1.0 не подходит

  15.  

    теперь все проходит все работает но из переменной не вставляет в поле взятое из zapros.txt
    СДЕЛАЛ ВОТ ТАК
    for (i=1;i<=1;i++){
    iimPlayCode("CMDLINE !DATASOURCE D:\\FirefoxPortable\\Zapros\\zapros.txt\n SET !DATASOURCE_COLUMNS 1\n SET !EXTRACT {{!COL1}}")
    var zapros = iimGetLastExtract(1)
    iimDisplay('строка '+ i +' запрос '+ zapros)
    iimPlayCode("URL GOTO=https://www.facebook.com/")
    iimPlayCode("TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://www.facebook.com/search/top/ ATTR=NAME:q CONTENT={{!COL1}}")
    НО ЕСЛИ CONTENT= ВСАВИТЬ ДОПУСТИМ ЛЮБОЕ СЛОВО ТО РАБОТАЕТ
    а если {{!COL1}} то ошибка TypeError: this.dataSource[(line — 1)] is undefined, line 1 (Error code: -1001)
    почему из переменной не ставит в поле ввода не пойму помоги вся работа на этом стоит время уже много убил а к результату не пришел

  16.  

    нашел решение через программу imacros code creator там код аймакрос преобразовал в js и все работает ,но почему в ручную писал и не пошло не пойму если есть возможность разберите мой вопрос за рание спасибо с Уважением Роман

    •  

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

  17.  

    Пишу скрипты автоматизации браузера и ПК через Imacros-JavaScript любой сложности. Цена договорная
    Если нужно, могу предоставить примеры работ.
    https://vk.com/danger_is_lord

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