Script Problem

Support for iMacros. The iMacros software is the unique solution for automating every activity inside a web browser, for data extraction and web testing.
Forum rules
iMacros EOL - Attention!

The renewal maintenance has officially ended for Progress iMacros effective November 20, 2023 and all versions of iMacros are now considered EOL (End-of-Life). The iMacros products will no longer be supported by Progress (aside from customer license issues), and these forums will also no longer be moderated from the Progress side.

Thank you again for your business and support.

Sincerely,
The Progress Team

Before asking a question or reporting an issue:
1. Please review the list of FAQ's.
2. Use the search box (at the top of each forum page) to see if a similar problem or question has already been addressed.
3. Try searching the iMacros Wiki - it contains the complete iMacros reference as well as plenty of samples and tutorials.
4. We can respond much faster to your posts if you include the following information: CLICK HERE FOR IMPORTANT INFORMATION TO INCLUDE IN YOUR POST
Post Reply
bestisme
Posts: 47
Joined: Sun Mar 23, 2014 7:37 am

Script Problem

Post by bestisme » Fri Sep 12, 2014 6:32 am

Sorry for the title unable for being enough informative, but I couldn't think any better :(

Config Info:
Windows XP Sp 2
Firefox 32.0


The code :

Code: Select all

for (i = 0; i < 50000; i++) {

var macro;
macro =  "CODE:";
macro +=  "VERSION BUILD=8810214 RECORDER=FX" + "\n"; 
macro +=  "TAB T=1" + "\n"; 
macro +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
macro +=  "SET !TIMEOUT_STEP 0" + "\n"; 
iimPlay(macro)

var verify;
verify =  "CODE:";
verify +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
verify +=  "SET !TIMEOUT_STEP 0" + "\n"; 
verify +=  "TAG POS=1 TYPE=DIV ATTR=TXT:Verification<SP>Code EXTRACT=TXT" + "\n"; 
iimPlay(verify)

var G_Extract= iimGetLastExtract(1);
var captchasolver;
captchasolver =  "CODE:";
captchasolver +=  "VERSION BUILD=8820413 RECORDER=FX" + "\n"; 
captchasolver +=  "SET !TIMEOUT_PAGE 1000"
captchasolver +=  "TAB T=1" + "\n"; 
captchasolver +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
captchasolver +=  "ONDOWNLOAD FOLDER=d:\ FILE=captcha.jpg" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=IMG ATTR=HREF:*captcha* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT" + "\n"; 
captchasolver +=  "TAB OPEN" + "\n"; 
captchasolver +=  "TAB T=2" + "\n"; 
captchasolver +=  "URL GOTO=http://www.9kw.eu/grafik/form.html" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT ATTR=NAME:apikey CONTENT=8FV9JFGBJ60WMTY9208Y60" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT ATTR=NAME:prio CONTENT=0" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/index.cgi ATTR=NAME:selfsolve CONTENT=NO" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/index.cgi ATTR=NAME:confirm CONTENT=NO" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/index.cgi ATTR=NAME:case-sensitive CONTENT=NO" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/index.cgi ATTR=NAME:selfsolve CONTENT=NO" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT ATTR=NAME:source CONTENT=imacros" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT ATTR=NAME:file-upload-01 CONTENT=D:\captcha.jpg" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT ATTR=TYPE:submit" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=* ATTR=* EXTRACT=TXT" + "\n"; 
captchasolver +=  "TAB CLOSE" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:captcha CONTENT={{!EXTRACT}}" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:button" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=A ATTR=TXT:Continue<SP>Battle" + "\n";
captchasolver +=  "URL GOTO=http://pokemoncreed.net/battle.php?opp=Mysterious_Trainer" + "\n";



//Finished introducing stupid variables



if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

//First Verify



else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Toxic Opponent


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}



//Copy this,it is standard set of code of verification, next to it will come else statements

else
{
iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Golurk")
}

// We switched to 2nd Pokemon


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly


//Now you need to switch to 3rd Pokemon


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Golurk")
}

// So now we are on third pokemon.


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

// Now we go to fourth pokemon

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Golurk")
}

//Now we are on fourth Pokemon, and need to fly twice


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

//Now we go to fifth pokemon



iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=3 TYPE=SPAN ATTR=TXT:d")
}

//Now, we fly twice

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}


//Now we need to go to Rotom



iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Rotom")
}

//Now we are on Rotom


//Now we need to MegaHorn

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=2 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:URL GOTO=http://pokemoncreed.net/battle.php?opp=Mysterious_Trainer")
}

}

The problem :

When the script runs with the text on the screen i.e. G_Extract unequals to #EANF#, it does not run the captchasolver script. What am I doing wrong?
chivracq
Posts: 10301
Joined: Sat Apr 13, 2013 1:07 pm
Location: Amsterdam (NL)

Re: Script Problem

Post by chivracq » Fri Sep 12, 2014 3:17 pm

bestisme wrote:Sorry for the title unable for being enough informative, but I couldn't think any better :(

Config Info:
Windows XP Sp 2
Firefox 32.0


The code :

Code: Select all

for (i = 0; i < 50000; i++) {

var macro;
macro =  "CODE:";
macro +=  "VERSION BUILD=8810214 RECORDER=FX" + "\n"; 
macro +=  "TAB T=1" + "\n"; 
macro +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
macro +=  "SET !TIMEOUT_STEP 0" + "\n"; 
iimPlay(macro)

var verify;
verify =  "CODE:";
verify +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
verify +=  "SET !TIMEOUT_STEP 0" + "\n"; 
verify +=  "TAG POS=1 TYPE=DIV ATTR=TXT:Verification<SP>Code EXTRACT=TXT" + "\n"; 
iimPlay(verify)

var G_Extract= iimGetLastExtract(1);
var captchasolver;
captchasolver =  "CODE:";
captchasolver +=  "VERSION BUILD=8820413 RECORDER=FX" + "\n"; 
captchasolver +=  "SET !TIMEOUT_PAGE 1000"
captchasolver +=  "TAB T=1" + "\n"; 
captchasolver +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
captchasolver +=  "ONDOWNLOAD FOLDER=d:\ FILE=captcha.jpg" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=IMG ATTR=HREF:*captcha* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT" + "\n"; 
captchasolver +=  "TAB OPEN" + "\n"; 
captchasolver +=  "TAB T=2" + "\n"; 
captchasolver +=  "URL GOTO=http://www.9kw.eu/grafik/form.html" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT ATTR=NAME:apikey CONTENT=8FV9JFGBJ60WMTY9208Y60" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT ATTR=NAME:prio CONTENT=0" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/index.cgi ATTR=NAME:selfsolve CONTENT=NO" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/index.cgi ATTR=NAME:confirm CONTENT=NO" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/index.cgi ATTR=NAME:case-sensitive CONTENT=NO" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/index.cgi ATTR=NAME:selfsolve CONTENT=NO" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT ATTR=NAME:source CONTENT=imacros" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT ATTR=NAME:file-upload-01 CONTENT=D:\captcha.jpg" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT ATTR=TYPE:submit" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=* ATTR=* EXTRACT=TXT" + "\n"; 
captchasolver +=  "TAB CLOSE" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:captcha CONTENT={{!EXTRACT}}" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:button" + "\n"; 
captchasolver +=  "TAG POS=1 TYPE=A ATTR=TXT:Continue<SP>Battle" + "\n";
captchasolver +=  "URL GOTO=http://pokemoncreed.net/battle.php?opp=Mysterious_Trainer" + "\n";



//Finished introducing stupid variables



if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

//First Verify



else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Toxic Opponent


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}



//Copy this,it is standard set of code of verification, next to it will come else statements

else
{
iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Golurk")
}

// We switched to 2nd Pokemon


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly


//Now you need to switch to 3rd Pokemon


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Golurk")
}

// So now we are on third pokemon.


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

// Now we go to fourth pokemon

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Golurk")
}

//Now we are on fourth Pokemon, and need to fly twice


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

//Now we go to fifth pokemon



iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=3 TYPE=SPAN ATTR=TXT:d")
}

//Now, we fly twice

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}

//Fly

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}


//Now we need to go to Rotom



iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Rotom")
}

//Now we are on Rotom


//Now we need to MegaHorn

iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:TAG POS=2 TYPE=INPUT:SUBMIT FORM=ACTION:battle.php?c=* ATTR=NAME:move")
}


iimPlay(verify);
var G_Extract= iimGetLastExtract(1);
if (G_Extract!=="#EANF#")
{
iimPlay(captchasolver)
}

else
{
iimPlay("CODE:URL GOTO=http://pokemoncreed.net/battle.php?opp=Mysterious_Trainer")
}

}

The problem :

When the script runs with the text on the screen i.e. G_Extract unequals to #EANF#, it does not run the captchasolver script. What am I doing wrong?
iMacros Version is missing, your Script shows a mix of v8.8.1 and v8.8.2...

OK, I had a look at your Script and everything looks normal to me, except that your first 'macro' Macro doesn't do anything...

Things you can try:
- Increase '!TIMEOUT_STEP' to 1 to give more time to the Captcha to appear...
- Idem with a mini 'WAIT' Statement...
- Add a "SET !EXTRACT NULL" just to be sure, though I would think that '!EXTRACT' is automatically reset to Null when running Macros created on the fly like you do, but I've never used it, so I don't know for sure...
- Debug your Script by reactivating '!EXTRACT_TEST_POPUP' + a 'PROMPT' on '!EXTRACT' and an 'alert()' on 'G_Extract'.
- (F)CI(M) = (Full) Config Info (Missing): iMacros + Browser + OS (+ all 3 Versions + 'Free'/'PE'/'Trial').
- FCI not mentioned: I don't even read the Qt...! (or only to catch Spam!)
- Script & URL help a lot for more "educated" Help...
bestisme
Posts: 47
Joined: Sun Mar 23, 2014 7:37 am

Re: Script Problem

Post by bestisme » Sun Sep 14, 2014 6:39 am

I don't know myself what The problem was, I just removed !Set_TImeout line and everything worked fine...

Btw, sorry for not replying :(
chivracq
Posts: 10301
Joined: Sat Apr 13, 2013 1:07 pm
Location: Amsterdam (NL)

Re: Script Problem

Post by chivracq » Sun Sep 14, 2014 12:17 pm

bestisme wrote:I don't know myself what The problem was, I just removed !Set_TImeout line and everything worked fine...

Btw, sorry for not replying :(
OK, so I was right, that was the first Suggestion I made ("Things you can try: - Increase '!TIMEOUT_STEP' to 1 to give more time to the Captcha to appear...". But removing that Line is one Step too far, I would think, because now you've gone back to the Default Setting which is 6 sec (unless you reduced the overall Default !TIMEOUT Setting in the Options from 60 sec to...stg less...?), which means that between each Move in your Game, iMacros is always waiting for 6 sec, which makes your complete Script very slow, I would think...

You'd better do like I said, increase !TIMEOUT_STEP to 1 or 2, check what best Value is for you to tune it...
- (F)CI(M) = (Full) Config Info (Missing): iMacros + Browser + OS (+ all 3 Versions + 'Free'/'PE'/'Trial').
- FCI not mentioned: I don't even read the Qt...! (or only to catch Spam!)
- Script & URL help a lot for more "educated" Help...
Post Reply