Nested Loops with Javascript
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
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
Nested Loops with Javascript
I could need some help with a double Loop in imacros. This is what I want to do:
Go to this page: "https://www.ebay-kleinanzeigen.de/s-musik-cds/c78" and extract all the offer titles into an csv file. Then, go to the next page and repeat the same steps until all results are extracted. I created 2 separate .iim macro´s for this. Macro1 for extraction and macro 2 for the next page click. Both macro´s are working fine in .iim so far.
Now I wrote this code in Javascript and it´s not working. This is the code:
var macro1 = "CODE:";
macro1 +="SET !ERRORIGNORE YES"+"\n";
macro1 +="VERSION BUILD=9030808 RECORDER=FX"+"\n";
macro1 +="URL GOTO=https://www.ebay-kleinanzeigen.de/s-musik-cds/c78"+"\n";
macro1 +="TAG POS=1 TYPE=SECTION ATTR=CLASS:"aditem-image" CONTENT=MOUSEOVER"+"\n";
macro1 +="TAG POS=R1 TYPE=A ATTR=* EXTRACT=HREF"+"\n";
macro1 +="SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv"+"\n";
var macro2 = "CODE:";
macro2 +="TAG POS=1 TYPE=A ATTR=HREF:https://www.ebay-kleinanzeigen.de/s-sei ... platten/k0" +"\n";
for (j = 1;j < 5; j + +) { // I set the loop to 5 to test the first 5 pages. Is this correct?
for (i = 1, i < 28, i ++) { // I set this loop to 28 because there´s a maximum of 28 results on one page. Is this correct?
iimSet("i", i);
iimPlayCode(macro1);
}
iimPlayCode(macro2);
}
For the playback I tried normal Play and Loop. When I hit normal play it returns this error:
"SyntaxError: missing ; before statement, line NaN (Error code: -991)"
I did some research but cannot find the solution for this. Can anyone tell me if this is the correct way to do this and if not...what am I doing wrong here?
I am working on an Imac El Capitan and I use Firefox.
Looking forward to your replies Thanks!
Go to this page: "https://www.ebay-kleinanzeigen.de/s-musik-cds/c78" and extract all the offer titles into an csv file. Then, go to the next page and repeat the same steps until all results are extracted. I created 2 separate .iim macro´s for this. Macro1 for extraction and macro 2 for the next page click. Both macro´s are working fine in .iim so far.
Now I wrote this code in Javascript and it´s not working. This is the code:
var macro1 = "CODE:";
macro1 +="SET !ERRORIGNORE YES"+"\n";
macro1 +="VERSION BUILD=9030808 RECORDER=FX"+"\n";
macro1 +="URL GOTO=https://www.ebay-kleinanzeigen.de/s-musik-cds/c78"+"\n";
macro1 +="TAG POS=1 TYPE=SECTION ATTR=CLASS:"aditem-image" CONTENT=MOUSEOVER"+"\n";
macro1 +="TAG POS=R1 TYPE=A ATTR=* EXTRACT=HREF"+"\n";
macro1 +="SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv"+"\n";
var macro2 = "CODE:";
macro2 +="TAG POS=1 TYPE=A ATTR=HREF:https://www.ebay-kleinanzeigen.de/s-sei ... platten/k0" +"\n";
for (j = 1;j < 5; j + +) { // I set the loop to 5 to test the first 5 pages. Is this correct?
for (i = 1, i < 28, i ++) { // I set this loop to 28 because there´s a maximum of 28 results on one page. Is this correct?
iimSet("i", i);
iimPlayCode(macro1);
}
iimPlayCode(macro2);
}
For the playback I tried normal Play and Loop. When I hit normal play it returns this error:
"SyntaxError: missing ; before statement, line NaN (Error code: -991)"
I did some research but cannot find the solution for this. Can anyone tell me if this is the correct way to do this and if not...what am I doing wrong here?
I am working on an Imac El Capitan and I use Firefox.
Looking forward to your replies Thanks!
Re: Nested Loops with Javascript
dave86c wrote:I need some help with a nested Loop using Javascript. I have a working .iim macro which extracts all offer titles (HREF´s) from the page and puts in into the excel file. This is the macro.
The problem comes when the macro hits the last item. Now I need to go to the next page and repeat the same steps again until all results are extracted. I created a Javascript file for that and this is how the code looks: (I set i<27 because there´s a maximum of 27 results on the page. )Code: Select all
VERSION BUILD=9030808 RECORDER=FX TAB T=1 SET !ERRORIGNORE YES URL GOTO=https://www.ebay-kleinanzeigen.de/s-musik-cds/c78 TAG POS={{!LOOP}} TYPE=SECTION ATTR=CLASS:"aditem-image" CONTENT=MOUSEOVER TAG POS=R1 TYPE=A ATTR=* EXTRACT=HREF SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv
When I run the code it returns this error:Code: Select all
for(var i=0;i<27;i++) { var macro = "CODE"; macro +="SET !ERRORIGNORE YES"+"\n"; macro +="URL GOTO=https://www.ebay-kleinanzeigen.de/s-musik-cds/c78"+"\n"; macro +="TAG POS={{!LOOP}} TYPE=SECTION ATTR=CLASS:"aditem-image" CONTENT=MOUSEOVER"+"\n"; macro +="TAG POS=R1 TYPE=A ATTR=* EXTRACT=HREF"+"\n"; macro +="SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv"+"\n"; iimPlay(macro) }
Can someone tell me if this is the correct way to setup a nested loop? I tried different setups but none of them seems to work. I used the Play button and not the loop button.SyntaxError: missing ; before statement, line NaN (Error code: -991)
Working on anLooking forward to any replies!Code: Select all
Imac El Capitan with Firefox.
No need to kind of try to spam the Forum by opening several similar Threads, you can always add some more Info later (or even edit your own Posts). I've deleted your 2nd Thread but still quote them both as they contain slightly different (+ complementary) Info.Nested Loop with Javascript not working properly
Posted by dave86c on 11 Oct 2016, 21:13
I could need some help with a double Loop in imacros. This is what I want to do:
Go to this page: "https://www.ebay-kleinanzeigen.de/s-musik-cds/c78" and extract all the offer titles into an csv file. Then, go to the next page and repeat the same steps until all results are extracted. I created 2 separate .iim macro´s for this. Macro1 for extraction and macro 2 for the next page click. Both macro´s are working fine in .iim so far.
Now I wrote this code in Javascript and it´s not working. This is the code:
For the playback I tried normal Play and Loop. When I hit normal play it returns this error:Code: Select all
var macro1 = "CODE:"; macro1 +="SET !ERRORIGNORE YES"+"\n"; macro1 +="VERSION BUILD=9030808 RECORDER=FX"+"\n"; macro1 +="URL GOTO=https://www.ebay-kleinanzeigen.de/s-musik-cds/c78"+"\n"; macro1 +="TAG POS=1 TYPE=SECTION ATTR=CLASS:"aditem-image" CONTENT=MOUSEOVER"+"\n"; macro1 +="TAG POS=R1 TYPE=A ATTR=* EXTRACT=HREF"+"\n"; macro1 +="SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv"+"\n"; var macro2 = "CODE:"; macro2 +="TAG POS=1 TYPE=A ATTR=HREF:https://www.ebay-kleinanzeigen.de/s-seite:*/schallplatten/k0" +"\n"; for (j = 1;j < 5; j + +) { // I set the loop to 5 to test the first 5 pages. Is this correct? for (i = 1, i < 28, i ++) { // I set this loop to 28 because there´s a maximum of 28 results on one page. Is this correct? iimSet("i", i); iimPlayCode(macro1); } iimPlayCode(macro2); }
I did some research but cannot find the solution for this. Can anyone tell me if this is the correct way to do this and if not...what am I doing wrong here?"SyntaxError: missing ; before statement, line NaN (Error code: -991)"
I am working on anLooking forward to your replies Thanks!Code: Select all
Imac El Capitan and I use Firefox.
+FCIM...!
=> iMacros for FF v9.0.3, FF48/49...?, iMac El Capitan.
(Even if exact FF Version will probably not play a role from quick reading your 2 Posts but always mention clearly your FCI when you open a Thread, I don't read/react otherwise..., read my Sig...)
- (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...
- FCI not mentioned: I don't even read the Qt...! (or only to catch Spam!)
- Script & URL help a lot for more "educated" Help...
Re: Nested Loops with Javascript
Sorry for the double post. I was not sure if I uploaded the first one. It took quite long before my post was online and I had a lot of open windows and no overview anymore
Is it poossible to delete your post to make this thread a little more readable with less information?
I have been playing around with the code and I have an almost working version. This is the code:
var macro1 = "CODE:";
macro1 +="SET !ERRORIGNORE YES" +"\n";
macro1 +="VERSION BUILD=9030808 RECORDER=FX" +"\n";
//macro1 +="URL GOTO=https://www.ebay-kleinanzeigen.de/s-bue ... l/c93"+"\n";
macro1 +="WAIT SECONDS=2" +"\n";
macro1 +="TAG POS={{!i}} TYPE=SECTION ATTR=CLASS:aditem-image CONTENT=MOUSEOVER" +"\n";
macro1 +="WAIT SECONDS=2" +"\n";
macro1 +="TAG POS=R1 TYPE=A ATTR=* EXTRACT=HREF" +"\n";
macro1 +="WAIT SECONDS=2" +"\n";
macro1 +="SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv" +"\n";
var macro2 = "CODE:";
macro2 +="WAIT SECONDS=2" +"\n";
macro2 +="TAG POS={{!LOOP}} TYPE=A ATTR=HREF:https://www.ebay-kleinanzeigen.de/s-bue ... eite:*/c93" +"\n";
for (j = 1; j < 5; j ++) {
for (i = 1; i < 4; i ++) {
//iimSet("i", i);
iimPlay(macro1);
}
iimPlay(macro2);
}
The output is a little weird. I had 2 different outputs with the same macro (no changes to the code or anything)
1. Sometimes the macro extracts the titles from first page, then goes to the second page and doesn´t extract there.
2. It doesn´t extract any titles. It only does the next page loop. CSV file remains blank afterwards.
Then, in case 1 the CSV output is always different. Sometimes the extracted text starts at line 2 and sometimes in line 14 or something.
Is there anything I do wrong here? I am also not sure about the POS={{!i}} and POS={{!LOOP}} in line 6 and 15. But it seems to work so far (sometimes)
I am working with this system:
iMacros for FF 9030808 FF 49. iMac El Capitan version 10.11.4
Is it poossible to delete your post to make this thread a little more readable with less information?
I have been playing around with the code and I have an almost working version. This is the code:
var macro1 = "CODE:";
macro1 +="SET !ERRORIGNORE YES" +"\n";
macro1 +="VERSION BUILD=9030808 RECORDER=FX" +"\n";
//macro1 +="URL GOTO=https://www.ebay-kleinanzeigen.de/s-bue ... l/c93"+"\n";
macro1 +="WAIT SECONDS=2" +"\n";
macro1 +="TAG POS={{!i}} TYPE=SECTION ATTR=CLASS:aditem-image CONTENT=MOUSEOVER" +"\n";
macro1 +="WAIT SECONDS=2" +"\n";
macro1 +="TAG POS=R1 TYPE=A ATTR=* EXTRACT=HREF" +"\n";
macro1 +="WAIT SECONDS=2" +"\n";
macro1 +="SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv" +"\n";
var macro2 = "CODE:";
macro2 +="WAIT SECONDS=2" +"\n";
macro2 +="TAG POS={{!LOOP}} TYPE=A ATTR=HREF:https://www.ebay-kleinanzeigen.de/s-bue ... eite:*/c93" +"\n";
for (j = 1; j < 5; j ++) {
for (i = 1; i < 4; i ++) {
//iimSet("i", i);
iimPlay(macro1);
}
iimPlay(macro2);
}
The output is a little weird. I had 2 different outputs with the same macro (no changes to the code or anything)
1. Sometimes the macro extracts the titles from first page, then goes to the second page and doesn´t extract there.
2. It doesn´t extract any titles. It only does the next page loop. CSV file remains blank afterwards.
Then, in case 1 the CSV output is always different. Sometimes the extracted text starts at line 2 and sometimes in line 14 or something.
Is there anything I do wrong here? I am also not sure about the POS={{!i}} and POS={{!LOOP}} in line 6 and 15. But it seems to work so far (sometimes)
I am working with this system:
iMacros for FF 9030808 FF 49. iMac El Capitan version 10.11.4
Re: Nested Loops with Javascript
First of all try this script below on a certain page. Does it work as you want?
Code: Select all
var macro0 = "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro0 += "URL GOTO=https://www.ebay-kleinanzeigen.de/s-bueromoebel/c93" + "\n";
var macro1 = "TAG POS={{i}} TYPE=SECTION ATTR=CLASS:aditem-image CONTENT=MOUSEOVER" + "\n";
macro1 += "TAG POS=R1 TYPE=A ATTR=* EXTRACT=TXT" + "\n";
macro1 += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv" + "\n";
iimPlayCode(macro0);
for (i = 1; i < 28; i++) {
iimSet("i", i);
var ret = iimPlayCode(macro1);
if (ret != 1)
break;
}
Re: Nested Loops with Javascript
When i play it, it gives me this error:
MacroSyntaxError: wrong format of TAG command, line 4 (Error code: -910)
I had a look at line 4 and can´t see anything wrong there.
Also could you tell me what the first line is doing?
var macro0 = "FILTER TYPE=IMAGES STATUS=ON" + "\n";
thanks
** Sorry I already found out about the Filter line. Makes sense!
MacroSyntaxError: wrong format of TAG command, line 4 (Error code: -910)
I had a look at line 4 and can´t see anything wrong there.
Also could you tell me what the first line is doing?
var macro0 = "FILTER TYPE=IMAGES STATUS=ON" + "\n";
thanks
** Sorry I already found out about the Filter line. Makes sense!
Re: Nested Loops with Javascript
To downgrade your iMacros for Firefox to 8.9.7 is a good advice.
I don't see line #4 in the macros at all (only 2 and 3 lines). Post the script you're playing.dave86c wrote:I had a look at line 4 and can´t see anything wrong there.
Re: Nested Loops with Javascript
OKay I going to downgrade now. Do you know if all my macro´s will be gone if I downgrade? You think I need to save them somewhere else?
This is the script I´m playing. It´s exactly the one you sent me:
var macro0 = "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro0 += "URL GOTO=https://www.ebay-kleinanzeigen.de/s-bueromoebel/c93" + "\n";
var macro1 = "TAG POS={{i}} TYPE=SECTION ATTR=CLASS:aditem-image CONTENT=MOUSEOVER" + "\n";
macro1 += "TAG POS=R1 TYPE=A ATTR=* EXTRACT=TXT" + "\n";
macro1 += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv" + "\n";
iimPlayCode(macro0);
for (i = 1; i < 28; i++) {
iimSet("i", i);
var ret = iimPlayCode(macro1);
if (ret != 1)
break;
}
This is the script I´m playing. It´s exactly the one you sent me:
var macro0 = "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro0 += "URL GOTO=https://www.ebay-kleinanzeigen.de/s-bueromoebel/c93" + "\n";
var macro1 = "TAG POS={{i}} TYPE=SECTION ATTR=CLASS:aditem-image CONTENT=MOUSEOVER" + "\n";
macro1 += "TAG POS=R1 TYPE=A ATTR=* EXTRACT=TXT" + "\n";
macro1 += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv" + "\n";
iimPlayCode(macro0);
for (i = 1; i < 28; i++) {
iimSet("i", i);
var ret = iimPlayCode(macro1);
if (ret != 1)
break;
}
Re: Nested Loops with Javascript
Make a backup if you are not sure.dave86c wrote:OKay I going to downgrade now. Do you know if all my macro´s will be gone if I downgrade? You think I need to save them somewhere else?
I tested my code. It works fine.
Re: Nested Loops with Javascript
allright, it works. The downgrade seems to make sense!
However this is only the first part of the macro and not the second loop where it goes to the next page and continues extracting. Can I use my old for loop to do that?
However this is only the first part of the macro and not the second loop where it goes to the next page and continues extracting. Can I use my old for loop to do that?
Re: Nested Loops with Javascript
It seems to me that someone is very lucky today. Here's a gift for you
Code: Select all
var macro0 = "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro0 += "URL GOTO=https://www.ebay-kleinanzeigen.de/s-bueromoebel/c93" + "\n";
var macro1 = "SET !TIMEOUT_STEP 0" + "\n";
macro1 += "TAG POS={{i}} TYPE=SECTION ATTR=CLASS:aditem-image CONTENT=MOUSEOVER" + "\n";
macro1 += "TAG POS=R1 TYPE=A ATTR=* EXTRACT=TXT" + "\n";
macro1 += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=javascript_test.csv" + "\n";
var macro2 = "WAIT SECONDS=2" +"\n";
macro2 += "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro2 += "TAG POS=1 TYPE=A ATTR=TXT:{{j}}" +"\n";
iimPlayCode(macro0);
for (j = 1; j <= 5; j++) {
iimSet("j", j);
iimPlayCode(macro2);
for (i = 1; i <= 28; i++) {
iimSet("i", i);
var ret = iimPlayCode(macro1);
if (ret != 1)
break;
}
}
Re: Nested Loops with Javascript
NICEE! Thanks a lot for this Appreciate it
This is exactly what I need to start with. Now I´m going to add more elements to the code. For example the item description (which comes when you click on the product) and put is into column B in the Excel Sheet. I think I can add that because I have some code which does that part.
I might need some help with the following:
Is it possible to exclude some titles from extracting. For example everything which contains "chair" or "table" I have some very basic Javascript knowledge. Would it make sense to put all titles into an array. Loop through it with an if / else statement and then make a choice for extracting or not? I have all those negative keywords in an excel file...
Looking forward
This is exactly what I need to start with. Now I´m going to add more elements to the code. For example the item description (which comes when you click on the product) and put is into column B in the Excel Sheet. I think I can add that because I have some code which does that part.
I might need some help with the following:
Is it possible to exclude some titles from extracting. For example everything which contains "chair" or "table" I have some very basic Javascript knowledge. Would it make sense to put all titles into an array. Loop through it with an if / else statement and then make a choice for extracting or not? I have all those negative keywords in an excel file...
Looking forward
Re: Nested Loops with Javascript
So far I have this code for the item description extracting. I used your code and I added some code to macro1. When I play this I get this error:
unknown command: VAR, line 1 (Error code: -910)
I can´t figure out what the problem is. Is this the correct way to extract item description?
Code is:
var macro0 = "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro0 += "URL GOTO=https://www.ebay-kleinanzeigen.de/s-bueromoebel/c93" + "\n";
var macro1 = "SET !TIMEOUT_STEP 0" + "\n";
macro1 += "TAG POS={{i}} TYPE=SECTION ATTR=CLASS:aditem-image CONTENT=MOUSEOVER" + "\n";
macro1 += "TAG POS=R1 TYPE=A ATTR=* EXTRACT=TXT" + "\n";
macro1 += "SET title {{!EXTRACT}}" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS={{!i}} TYPE=SECTION ATTR=CLASS:"aditem-image" CONTENT=MOUSEOVER" + "\n";
macro1 += "TAG POS=R1 TYPE=A ATTR=* EXTRACT=HREF" + "\n";
macro1 += "SET url {{!EXTRACT}}" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "WAIT SECONDS=3" + "\n";
macro1 += "URL GOTO={{url}}" + "\n";
macro1 += "TAG POS=1 TYPE=P ATTR=ID:viewad-description-text EXTRACT=TXT" + "\n";
macro1 += "SET description {{!EXTRACT}}" + "\n";
macro1 += "SET !EXTRACT {{title}}[EXTRACT]{{description}}[EXTRACT]{{url}}[EXTRACT]" + "\n";
macro1 += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=test1.csv" + "\n";
macro1 += "BACK" + "\n";
var macro2 = "WAIT SECONDS=2" +"\n";
macro2 += "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro2 += "TAG POS=1 TYPE=A ATTR=TXT:{{j}}" +"\n";
iimPlayCode(macro0);
for (j = 1; j <= 13; j++) {
iimSet("j", j);
iimPlayCode(macro2);
for (i = 1; i <= 28; i++) {
iimSet("i", i);
var ret = iimPlayCode(macro1);
if (ret != 1)
break;
}
}
unknown command: VAR, line 1 (Error code: -910)
I can´t figure out what the problem is. Is this the correct way to extract item description?
Code is:
var macro0 = "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro0 += "URL GOTO=https://www.ebay-kleinanzeigen.de/s-bueromoebel/c93" + "\n";
var macro1 = "SET !TIMEOUT_STEP 0" + "\n";
macro1 += "TAG POS={{i}} TYPE=SECTION ATTR=CLASS:aditem-image CONTENT=MOUSEOVER" + "\n";
macro1 += "TAG POS=R1 TYPE=A ATTR=* EXTRACT=TXT" + "\n";
macro1 += "SET title {{!EXTRACT}}" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS={{!i}} TYPE=SECTION ATTR=CLASS:"aditem-image" CONTENT=MOUSEOVER" + "\n";
macro1 += "TAG POS=R1 TYPE=A ATTR=* EXTRACT=HREF" + "\n";
macro1 += "SET url {{!EXTRACT}}" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "WAIT SECONDS=3" + "\n";
macro1 += "URL GOTO={{url}}" + "\n";
macro1 += "TAG POS=1 TYPE=P ATTR=ID:viewad-description-text EXTRACT=TXT" + "\n";
macro1 += "SET description {{!EXTRACT}}" + "\n";
macro1 += "SET !EXTRACT {{title}}[EXTRACT]{{description}}[EXTRACT]{{url}}[EXTRACT]" + "\n";
macro1 += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=test1.csv" + "\n";
macro1 += "BACK" + "\n";
var macro2 = "WAIT SECONDS=2" +"\n";
macro2 += "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro2 += "TAG POS=1 TYPE=A ATTR=TXT:{{j}}" +"\n";
iimPlayCode(macro0);
for (j = 1; j <= 13; j++) {
iimSet("j", j);
iimPlayCode(macro2);
for (i = 1; i <= 28; i++) {
iimSet("i", i);
var ret = iimPlayCode(macro1);
if (ret != 1)
break;
}
}
Re: Nested Loops with Javascript
OK! All that you mentioned is possible... At least for me.dave86c wrote:Is it possible to exclude some titles from extracting. For example everything which contains "chair" or "table" I have some very basic Javascript knowledge. Would it make sense to put all titles into an array. Loop through it with an if / else statement and then make a choice for extracting or not? I have all those negative keywords in an excel file...
Put the code into a file having 'js' extension.dave86c wrote:unknown command: VAR, line 1 (Error code: -910)
I can´t figure out what the problem is.
Re: Nested Loops with Javascript
Could you maybe give me some help and push me in the right direction with the negative keywords?
The file already has the .js Extension.
The file already has the .js Extension.
Re: Nested Loops with Javascript
Ah-ah...! That makes 2 of us...!iimfun wrote:OK! All that you mentioned is possible... At least for me.dave86c wrote:Is it possible to exclude some titles from extracting. For example everything which contains "chair" or "table" I have some very basic Javascript knowledge. Would it make sense to put all titles into an array. Loop through it with an if / else statement and then make a choice for extracting or not? I have all those negative keywords in an excel file...
You can do everything with iMacros, you just need to be a little bit "Creative" and everything is possible...
@OP, concerning your wish "to exclude some titles", I've recently implemented a very similar Mechanism (in pure '.iim') for some other Forum User in the following Thread where I explained and applied a few of the "Advanced" Tricks and Techniques that I regularly use for my own Scripts:
- exclude content of a txt/csv file when running script
- (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...
- FCI not mentioned: I don't even read the Qt...! (or only to catch Spam!)
- Script & URL help a lot for more "educated" Help...