Правила оформления сообщений в данном топике:
Адрес сайта и страницы, на которой возникла проблема, размещается в тегах [spoiler][noindex]http://адрес_сайта/название_страницы[/noindex][/spoiler]
Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - [spoiler][code]ваш код[/code][/spoiler]
или выложите на сайт «Pastebin».
При размещении объемных материалов, используйте тег "Spoiler" - [spoiler]ваш текст[/spoiler]
или выложите на сайт «Pastebin».
Размещать изображения в открытом виде. Для размещения скриншотов и других изображений, используйте тег "Spoiler" - [spoiler][img]http://ссылка_на_изображение[/img][/spoiler]
.
«Можно ответить на любой вопрос, если вопрос задан правильно.»
Платон
«Не каждый вопрос заслуживает ответа.»
Сайрус
Отсутствует
InfSub - нет и помощи нет!(((
Отсутствует
Доброго времени !
Люди я знаю этот скрипт многие мурыжили вот,и я до него добрался
Помогите разобраться
1: После того как приходит ответ капчи и ее ID скрипт тупо проходит до коца без каких либо действий и все
var keyApi = new Array(); keyApi['Recaptha'] = 'your_key'; var antiGateSystem = '1'; //Выбор ситемы распознавания капч. Вставте на 1 если Socialink или 2 если ruCaptcha var Wallet = 'your_wallet'; //Ваш кошелек var faucetOn = new Array(); // ВКЛ-ВЫКЛ сбор с определённых сайтов 1 = ВКЛ , 0 = ВЫКЛ (просто меняйте цыфру) faucetOn['01_dancefaucet'] = 1; // dancefaucet.com faucetOn['02_jazfaucetlist'] = 0; // jazfaucetlist.com faucetOn['03_moonbit'] = 0; // moonbit.co.in faucetOn['04_motherfaucet'] = 0; // motherfaucet.com //========================================================================================================================= var n = '\n'; var code = ''; var start_macro = ''; var date = new Date(); start_macro +='CODE:' + n; start_macro +='SET !EXTRACT_TEST_POPUP NO' + n; start_macro +='SET !ERRORIGNORE YES' + n; start_macro +='SET !ERRORCONTINUE YES' + n; start_macro +='SET !TIMEOUT_STEP 0' + n; last_sbor = new Array(); last_sbor['dancefaucet'] = 0; last_sbor['jazfaucetlist'] = 0; last_sbor['moonbit'] = 0; last_sbor['motherfaucet'] = 0; function time(){ return parseInt(new Date().getTime()/1000); } //========================================================================================================================= function SaveCapthaRecaptha (file_name){ code = ''; code += start_macro; code += 'TAB T=1' + n; code += 'SET !ENCRYPTION NO' + n; code += 'WAIT SECONDS=1' + n; code += 'ONDOWNLOAD FOLDER=C:\\FMACROS\\ FILE='+ file_name +' WAIT=YES' + n; code += 'WAIT SECONDS=1' + n; code += 'TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVEITEM' + n; code += 'TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVEITEM' + n; iimPlay(code, 60); } //========================================================================================================================= function SaveCapthaSolve (file_name){ code = ''; code += start_macro; code += 'TAB T=1' + n; code += 'SET !ENCRYPTION NO' + n; code += 'WAIT SECONDS=1' + n; code += 'ONDOWNLOAD FOLDER=C:\\FMACROS\\ FILE=' + file_name + ' WAIT=YES' + n; code += 'WAIT SECONDS=1' + n; code += 'TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT' + n; iimPlay(code, 60); } //========================================================================================================================= function GetRucaptcha (file_name,apikey){ var result = new Array(); code = ''; code += start_macro; code += 'TAB OPEN' + n; code += 'TAB T=2' + n; code += 'SET !TIMEOUT_PAGE 240' + n; code += 'URL GOTO=http://imacros2.rucaptcha.com/' + n; code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT='+ apikey + n; code += 'TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\FMACROS\\'+ file_name + n; code += 'TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:getcapcha.php ATTR=NAME:get_id CONTENT=YES' + n; code += 'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize' + n; code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n; code += 'WAIT SECONDS=1' + n; code += '' + n; iimPlay(code,60); var str = iimGetLastExtract(); var capthId = str.replace('OK|',''); switch (capthId){ case 'ERROR_NO_SLOT_AVAILABLE': code = ''; code += start_macro; code += 'TAB T=1' + n; code += 'WAIT SECONDS=10' + n; return GetRucaptcha (file_name,apikey); break; default: result['c_text'] = GetRucaptchaTEXT (capthId,apikey,file_name); result['c_id'] = capthId; } return result; } //========================================================================================================================= function GetRucaptchaTEXT (capthId,apikey,file_name){ var result = 'ERROR'; code = ''; code += start_macro; code += 'TAB OPEN' + n; code += 'TAB T=2' + n; code += 'URL GOTO='+ SERVICE +'res.php?key='+ apikey +'&action=get&id='+ capthId + n; code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT='+ apikey + n; code += 'WAIT SECONDS=2' + n; code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n; code += 'WAIT SECONDS=1' + n; code += 'TAB CLOSE' + n; iimPlay(code,60); var str = iimGetLastExtract(); var capth = str.replace('OK|',''); switch (capth){ case 'CAPCHA_NOT_READY': code = ''; code += start_macro; code += 'TAB T=1' + n; code += 'WAIT SECONDS=10' + n; iimPlay(code,60); result = GetRucaptchaTEXT (capthId,apikey); break; case 'ERROR_KEY_DOES_NOT_EXIST': return result = 'ERROR'; break; case 'ERROR_WRONG_ID_FORMAT': return result = 'ERROR'; break; case 'ERROR_WRONG_CAPTCHA_ID': return result = 'ERROR'; break; case 'ERROR_CAPTCHA_UNSOLVABLE': code = ''; code += start_macro; code += 'TAB T=1' + n; code += 'REFRESH' + n; iimPlay(code,60); return result = GetRucaptcha (file_name,apikey); break; default: var result = capth; } return result; } //========================================================================================================================= function reportRucaptcha(apikey,capthId){ code = ''; code += start_macro; code += 'TAB OPEN' + n; code += 'TAB T=2' + n; code += 'URL GOTO='+ SERVICE +'res.php?key='+ apikey +'&action=reportbad&id='+ capthId + n; code += 'WAIT SECONDS=5' + n; code += 'TAB CLOSE' + n; iimPlay(code,60); } //========================================================================================================================= function GetCaptcha(antigate,file_name,keyApi){ switch(antigate){ case '1': return GetRucaptcha (file_name,keyApi['Recaptha']); default: return GetRucaptcha (file_name,keyApi['Recaptha']); } } //========================================================================================================================= function reportCaptcha(antigate,keyApi,cId){ switch(antigate){ case '1': reportRucaptcha (keyApi['Recaptha'],cId); break; default: reportRucaptcha (keyApi['Recaptha'],cId); break; } } //========================================================================================================================= function Faucet_01_dancefaucet(antiGateSystem){ var file = '{{test1}}.png'; code = ''; code += start_macro; code += 'TAB T=1' + n; code += 'URL GOTO=http://dancefaucet.com/index' + n; iimPlay(code, 60); code = 'CODE:'; code += 'TAB T=1' + n; code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:bitcoin CONTENT=' + Wallet + n; iimPlay(code, 60); SaveCapthaSolve (file); var str = GetCaptcha (antiGateSystem,file,keyApi); var cText = str['c_text']; var captha = cText.replace(/\s/g,'<SP>'); iimDisplay(captha); if(captha=='ERROR'){ return; } code = ''; code += start_macro; code += 'TAB T=1' + n; code += 'WAIT SECONDS=3' + n; code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT=' + captha + n; code += 'WAIT SECONDS=3' + n; code += 'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=ID:claim-btn' + n; code += 'WAIT SECONDS=3' + n; code += 'FILEDELETE NAME=C:\\FMACROS\\'+ file + n; code += 'TAB T=1' + n; iimPlay(code, 60); iimPlay("CODE:TAG POS=1 TYPE=P ATTR=ID:free_play_error EXTRACT=TXT"); err=iimGetLastExtract(); if(err == 'Incorrect captcha entered') { reportCaptcha(antiGateSystem,keyApi,str['c_id']); Faucet_01_dancefaucet(antiGateSystem); } } //========================================================================================================================= while (100>0){ var sec = time(); report=''; report+='Сейчас ' + sec + n; report+='dancefaucet - ' + (last_sbor['dancefaucet']+3600) + n; report+='motherfaucet - ' + (last_sbor['motherfaucet']+900) + n; report+='freebitco - ' + (last_sbor['freebitco']+3600) + n; report+='moonbit - ' + (last_sbor['moonbit']+3600) + n; iimDisplay(report); if ((last_sbor['dancefaucet']+3600) < sec && faucetOn['01_dancefaucet'] == 1){ Faucet_01_dancefaucet(antiGateSystem); last_sbor['dancefaucet'] = time(); } if ((last_sbor['bitcoinker']+900) < sec && faucetOn['02_bitcoinker'] == 1){ Faucet_02_bitcoinker(antiGateSystem); last_sbor['bitcoinker'] = time(); } if ((last_sbor['moonbit']+3600) < sec && faucetOn['03_moonbit'] == 1){ Faucet_03_moonbit(antiGateSystem); last_sbor['moonbit'] = time(); } if ((last_sbor['motherfaucet']+900) < sec && faucetOn['04_motherfaucet'] == 1){ Faucet_04_motherfaucet(antiGateSystem); last_sbor['motherfaucet'] = time(); } code = ''; code += start_macro; code += 'TAB T=1' + n; code += 'URL GOTO=file:///C:/FMACROS/pause.html' + n; code += 'WAIT SECONDS=30' + n; iimPlay(code, 60); }
Отсутствует
Скрипт должен менять значение N и Y по переходе по ссылке. но выполняеться только Y
неужели никто не знает в чем проблема
Отсутствует
неужели никто не знает в чем проблема
Ну так у тебя цикл в цикле, первая итерация n это сотня итераций y. Так что будет сначала изменяться y, дойдет до 101 и дальше будет n изменяться. А y естественно застрянет на 101. Вроде не ошибаюсь)
Еще, на будущее, выкладывай код подредактированным, что-бы его прочесть можно было нормально.
for (n = 100; n <= 1000; n++) { if (ret == -101){break}; for (y = 1; y <= 100; y++) { if (ret == -101){break}; iimDisplay(y, n); var macro="CODE:"; macro += "URL GOTO=http://site.ru/page.php?q=control&id_unit="+n+"&action_id=1&id_loc_to="+y+"&cnf=1" + "\n"; var ret=iimPlay(macro); } }
Отредактировано Haart (24-03-2015 23:48:59)
Отсутствует
InfSub - нет и помощи нет!(((
Скрипт должен менять значение N и Y по переходе по ссылке. но выполняеться только Y
ни когда не отобразит значение n, должно быть:
в остальном, Haart прав, код верен
Отредактировано InfSub (25-03-2015 01:36:37)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
1: После того как приходит ответ капчи и ее ID скрипт тупо проходит до коца без каких либо действий и все
в приведенном коде, как минимум отсутствуют несколько функций, к тому же не объявлены некоторые переменные, что приводит к ошибке и остановке скрипта
2: Т.к. понятия не имею что такое :
///C:/FMACROS/form_api.html
это сохраненная страница http://imacros2.rucaptcha.com
3: Также не ясно "мне" что это(/C:/FMACROS/pause.html),где взять,куда положить?
замените ///C:/FMACROS/pause.html на about:blank
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Ребята, хочу подключить imacros2.rucaptcha.com, приходит ответ ввиде: ОK| ID номер|капча, а теперь как сделать что бы только капча в окно вбивалось. Все это сохраняется в переменной extract = txt.
Отсутствует
Kanataga, открыть глаза и убрать галочку в форме или соответствующую запись в скрипте
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Vsasyok007 пишетInfSub - нет и помощи нет!(((
OFFTOP: я тут как-бы не один - кто может ответить на вопросы...ну а если ни кто не может, то прошу прощения, но в данный момент, у меня просто физически нет времени, если вопросы останутся актуальными, то полноценно смогу ответить недели через 2
рабочий код
VERSION BUILD=8890130 RECORDER=FX SET !ERRORIGNORE YES CMDLINE !DATASOURCE hist.txt SET !DATASOURCE_LINE {{!LOOP}} SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*1 + 5); randomNumber;") TAB T=1 URL GOTO=https://twitter.com/профиль WAIT SECONDS={{!VAR1}} EVENT TYPE=CLICK SELECTOR="#global-new-tweet-button" BUTTON=0 EVENTS TYPE=KEYPRESS SELECTOR="#tweet-box-global" CHARS={{!COL1}} EVENT TYPE=CLICK SELECTOR="#global-tweet-dialog-dialog>DIV:nth-of-type(2)>DIV:nth-of-type(4)>FORM>DIV:nth-of-type(2)>DIV:nth-of-type(2)>BUTTON" BUTTON=0 TAB T=1 URL GOTO=http://my.mail.ru/ WAIT SECONDS={{!VAR1}} EVENT TYPE=CLICK SELECTOR="#centerColumn>DIV>DIV>DIV>DIV:nth-of-type(2)>TEXTAREA" BUTTON=0 EVENTS TYPE=KEYPRESS SELECTOR="#centerColumn>DIV>DIV>DIV>DIV:nth-of-type(2)>TEXTAREA" CHARS={{!COL1}} EVENT TYPE=CLICK SELECTOR="#centerColumn>DIV>DIV>DIV>DIV:nth-of-type(4)>DIV:nth-of-type(3)>DIV>DIV" BUTTON=0 TAB T=1 URL GOTO=https://vk.com/страница WAIT SECONDS={{!VAR1}} EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0 EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS={{!COL1}} EVENT TYPE=CLICK SELECTOR="#send_post" BUTTON=0
Отредактировано Vsasyok007 (25-03-2015 11:33:59)
Отсутствует
Haart
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Подскажите плиз, можно ли настроить скрипты для удаленного обновления? У меня задача поставить пару макросов на 150 компов, но в дальнейшем нужно будет допилить их. не хочется заново ставить.
Отсутствует
Подскажите плиз, можно ли настроить скрипты для удаленного обновления? У меня задача поставить пару макросов на 150 компов, но в дальнейшем нужно будет допилить их. не хочется заново ставить.
я реализовал данный способ через яндекс диск
авторизировался на трех машинах , как только меняется\обновляется скрипт на одной на всех тоже меняется
Есть очень большие недостатки данного способа:
1 - ЯД медленно работает
2 - могут создаваться вместо замены файлы с именем "файл(2).txt" и так далее, т.е. плохая работа с динамическими файлами
3 - переодически тупит , закономерности нет
4 - жрет, парядошно жрет ресурсы компа
5 - тупит при обновлении базы файлов
6 - в общем, если схема работы налажина все работает более менее нормально
если использовать, то только под iim и js и ничего более
Отсутствует
Спасибо всем кто помог чем смог
Отдельное спасибо InfSub !
Ребята, хочу подключить imacros2.rucaptcha.com, приходит ответ ввиде: ОK| ID номер|капча, а теперь как сделать что бы только капча в окно вбивалось. Все это сохраняется в переменной extract = txt.
Как то так - вроде
Отсутствует
Хм, хочу сохранить страницу через imacros, но ничего не получается. Так же и с скриншотом. Кто подскажет в чем проблема.
И так пробовал. SAVEAS TYPE=CPL FOLDER=* FILE=+_{{!NOW:yyyymmdd_hhnnss}} И так. SAVEAS TYPE=CPL FOLDER=d:\primedice FILE=+_{{!NOW:12323}} WAIT SECONDS=5 И скриншот. SAVEAS TYPE=PNG FOLDER=* FILE={{!NOW:yyyymmdd_hhnnss}}.png
Отсутствует
Всем доброго времени суток!
Подскажите пожалуйста, как сделать чтобы имакрос рандомно вставлял в поисковик одну из заданных фраз.
Пока единственное решение которое пришло на ум это задать каждую из поисковых фраз в виде переменных и чтобы в поисковую строку рандомно вставлялась одна из переменных. Но не знаю как именно реализовать вставку случайной переменной.
var poiskfraz1="Фраза 1"; var poiskfraz2="Фраза 2"; var poiskfraz3="Фраза 3"; iimPlay("CODE:TAB OPEN\nTAB T=2\nSET !TIMEOUT 30\nURL GOTO=http://www.google.ru/"); iimPlay("CODE:SET !TIMEOUT 30\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:* ATTR=ID:* CONTENT= ???
Отсутствует
HuKoJIau4, для этого есть поиск, вопрос как минимум несколько раз обсуждался
var poiskfraz=[]; poiskfraz.push("Фраза 1"); poiskfraz.push("Фраза 2"); poiskfraz.push("Фраза ..."); poiskfraz.push("Фраза n"); var num=Math.floor(Math.random()*poiskfraz.length); iimPlay("CODE:TAB OPEN\nTAB T=2\nSET !TIMEOUT 30\nURL GOTO=http://www.google.ru/"); iimPlay("CODE:SET !TIMEOUT 30\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:* ATTR=ID:* CONTENT="+poiskfraz[num]);
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Значит я не умею пользоваться поиском. Я искал, но находил только математические варианты, а как переделать под мой случай придумать не смог, извиняюсь.
Спасибо за помощь!
А подскажите, по идее этот кусочек скрипта, что вы мне написали, должен работать если поместить его его в отдельный файлик?
Просто при попытке сделать вышеописанное в файле .js вылетает ошибка:
Отсутствует
Просто при попытке сделать вышеописанное в файле .js вылетает ошибка:
скрытый текстSyntaxError: wrong format of TAG command, line: 2
я показал принцип, естественно - если фраза состоит из нескольких слов, то она должна быть обрамлена в двойные кавычки
iimPlay('CODE:SET !TIMEOUT 30\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:* ATTR=ID:* CONTENT="'+poiskfraz[num]+'"');
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Здравствуйте. Подскажите пожалуйста как сделать :
1. Когда нужно сохранить картинку(капчи), картинка не всегда сохраняется, как сделать так что бы когда картинка не сохранялась макрос повторялся от определённой строки. Капча такого вида
TAB T=1 SET !EXTRACT_TEST_POPUP NO SET !ERRORIGNORE YES SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*60 + 3680); randomNumber;") 'ключ рукапча SET !VAR2 'биткоин кошелёк SET !VAR3 'лайткоин кошелёк SET !VAR4 'догикоин кошелёк SET !VAR5 URL GOTO=http://www.coinfree.pl/ TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://www.coinfree.pl/litecoin-signup ATTR=NAME:litecoinWallet CONTENT={{!VAR4}} TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:http://www.coinfree.pl/litecoin-signup ATTR=NAME:password CONTENT=1234 TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://www.coinfree.pl/litecoin-signup ATTR=* TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:http://www.coinfree.pl/bitcoin-signup ATTR=NAME:password CONTENT=1234 TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://www.coinfree.pl/bitcoin-signup ATTR=NAME:bitcoinWallet CONTENT={{!VAR3}} TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://www.coinfree.pl/bitcoin-signup ATTR=* TAG POS=1 TYPE=BUTTON ATTR=TXT:Собирайте<SP>Биткоины SET !EXTRACT NULL 'Support Captcha FILEDELETE NAME=C:\CAPCH\image.jpg ONDOWNLOAD FOLDER=C:\CAPCH FILE=image.jpg TAG POS=1 TYPE=IMG ATTR=ID:captcha CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT TAB OPEN TAB T=2 URL GOTO=https://rucaptcha.com/imacros.html WAIT SECONDS=1 TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://rucaptcha.com/in.php ATTR=NAME:key CONTENT={{!VAR2}} WAIT SECONDS=1 TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://rucaptcha.com/in.php ATTR=NAME:file CONTENT=C:\CAPCH\image.jpg WAIT SECONDS=1 ONDIALOG POS=1 BUTTON=OK CONTENT= WAIT SECONDS=1 TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://rucaptcha.com/in.php ATTR=* WAIT SECONDS=1 TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT TAB CLOSE TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://www.coinfree.pl/litecoin-pay ATTR=NAME:captcha CONTENT={{!EXTRACT}} TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://www.coinfree.pl/bitcoin-pay ATTR=*
Отредактировано lsalex144 (28-03-2015 00:18:39)
Отсутствует
Не пробовали vbs + iMacros ?
Нужен минимальный пример и как его запускать.
Пример есть:
http://wiki.imacros.net/Random-Numbers.vbs
При запуске vbs -
т.е. я понимаю не создается объект?
Отредактировано spy686 (28-03-2015 08:42:30)
Удалено
Отсутствует
Подскажите, как лучше реализовать задачу:
Нужно чтобы скрипт войдя на сайт по очереди рандомно переходил на одну из ссылок сайта и так несколько раз (ну чтобы просто погулял по сайту).
На ум приходит 2 варианта:
1.
Отсутствует
Подскажите, как лучше реализовать задачу:Нужно чтобы скрипт войдя на сайт по очереди рандомно переходил на одну из ссылок сайта и так несколько раз (ну чтобы просто погулял по сайту).На ум приходит 2 варианта:1. скрытый текстTAG POS=1 TYPE=A ATTR=HREF:http://сайт.ру*SET !TIMEOUT 30TAG POS=1 TYPE=A ATTR=HREF:http://сайт.ру*SET !TIMEOUT 45и т.д. Будет ли он выбирать разные ссылки со страницы и переходить по ним или постоянно будет выбирать самую первую на сайте?2. Чтобы скрипт извлек все ссылки с сайта по маске сайт.ру* в текстовый файл, а затем рандомно выбирал из файла одну и ссылок и переходил по ней.Но с реализацией этого проблемы, знаний не хватает. Если можно подскажите или ткните носом в соответствующий материал.
SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1) TAG POS={{!VAR1}} TYPE=A ATTR=HREF:http://сайт.ру* SET !TIMEOUT 30 SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1) TAG POS={{!VAR1}} TYPE=A ATTR=HREF:http://сайт.ру* SET !TIMEOUT 45
Удалено
Отсутствует
SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1)
Извиняюсь за глупый вопрос, а что значит *10+1?
Отсутствует
Извиняюсь за глупый вопрос, а что значит *10+1?
Это такой метод есть в языке Java: Math.floor(Math.random() * (max - min) + min)
Возвращает случайное целое число между min (включительно) и max (не включая max).
То есть, случайное целое между 1 (min) и 11(max), не включая 11 или, если окончательно, то:
Math.floor(Math.random() * (11 - 1) + 1) или Math.floor(Math.random() * 10 + 1) - это выражение возвращает случайное целое число в промежутке от 1 до 10.
Я бы написал даже как то так:
SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1);") SET !VAR2 EVAL("Math.floor(Math.random()*15 + 25);") TAG POS={{!VAR1}} TYPE=A ATTR=HREF:http://сайт.ру* WAIT SECONDS={{!VAR2}}
А вот у меня есть еще готовый макрос автосерфинга по заданному сайту, если нет желания самому выдумывать:
VERSION BUILD=7601105 RECORDER=FX 'URL GOTO=адрес сайта, на котором будет работать макрос; 'SET !VAR2 - время в секундах, которое скрипт будет ожидать следующего перехода; 'SET !VAR3 - чем выше число вы поставите, тем больше ссылок сверху вниз кликнет макрос; TAB T=1 URL GOTO=http://pay-money.org.ua SET !VAR2 15 SET !VAR3 10 SET !ERRORIGNORE YES SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}} SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);") TAG POS={{!VAR1}} TYPE=A ATTR=TXT:* WAIT SECONDS={{!VAR2}}
Спасибо всем кто помог чем смог
Я так и не понял, чем все закончилось Заработал скрипт?
Отредактировано Supervizor (29-03-2015 01:45:18)
Отсутствует