iMacros: 9.0.3
Firefox: 52.6.0
In the past, a friend set up a looping macro for me on a website that would write text and send it using a loop that extracted names from a .txt file with a list. it worked fine for a few years but recently it just stopped working and simply cannot figure out how to fix it. Very sadly, my friend passed away and he was the only person I knew that could help me with this. here is the old macro that he had set up for me and I was using:
Code: Select all
VERSION BUILD=9030808 RECORDER=FX
TAB T=1
SET !DATASOURCE /Users/DianaD/Downloads/listforimacros.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
FRAME NAME="main"
EVENT TYPE=CLICK SELECTOR="HTML>BODY>TABLE>TBODY>TR>TD>DIV>TABLE>TBODY>TR>TD>TABLE>TBODY>TR>TD:nth-of-type(4)>DIV:nth-of-type(2)>TABLE>TBODY>TR:nth-of-type(2)>TD>DIV>DIV:nth-of-type(2)>DIV>INPUT" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>TABLE>TBODY>TR>TD>DIV>TABLE>TBODY>TR>TD>TABLE>TBODY>TR>TD:nth-of-type(4)>DIV:nth-of-type(2)>TABLE>TBODY>TR:nth-of-type(2)>TD>DIV>DIV:nth-of-type(2)>DIV>INPUT" CHARS="your text goes here {{!COL1}} or here"
EVENT TYPE=CLICK SELECTOR="HTML>BODY>TABLE>TBODY>TR>TD>DIV>TABLE>TBODY>TR>TD>TABLE>TBODY>TR>TD:nth-of-type(4)>DIV:nth-of-type(2)>TABLE>TBODY>TR:nth-of-type(2)>TD>DIV>DIV:nth-of-type(3)>INPUT" BUTTON=0
WAIT SECONDS=60
(yes i know im a lowly mac user i use macOS 10.12.6)
i would just change the part of the macro that says "your text goes here" to what i wanted and itd just rapidly enter and send it with the modified loop extracting names from my .txt file in my downloads folder.
I have made sure to keep both firefox and imacros from updating so things dont break. I use firefox 52.6.0 as always, and imacros 9.0.3 . now
This leads me to believe the site itself changed. the macro gets stuck on line 8 and the error code says that it cannot find what the SELECTOR command is looking for. im pretty sure the long HTML>BODY>etc" element was the text box that when clicked allowed typing to be entered, but this no longer works. I've tried using the inspector thingy to find the text box but copy pasting what comes up doesnt seem to work. trying to find it by clicking it while using all the different imacros record modes never resulted in a working SELECTOR element either.
through reading lots of imacros wiki stuff i barely understand and banging my head against the wall, I have learned that the code seems to be a string navigating the inspector's sub menus. though none of the record mode attempts yielded a functioning macro, i think i was able to get some new element things that maybe could be helpful. my hope is that with some help from this forum i can learn to manually correct the new code things i pulled from my imacros record mode attempts, and eventually get it working again. ive been collecting anything i find useful which ill share below:
here is a screenshot of the textbox that it was previously able to select:
download/file.php?mode=view&id=1565
to contrast with the old SELECTOR element found in the macro above, here is a new one i was able to get through one of the imacros recording modes ( but just copy pasting that in place of the old ones doesnt make the macro work for some reason:
Code: Select all
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(5)>TABLE>TBODY>TR:nth-of-type(4)>TD>TABLE>TBODY>TR:nth-of-type(2)>TD>TABLE>TBODY>TR>TD>DIV>DIV>DIV>TABLE>TBODY>TR>TD>DIV>TABLE>TBODY>TR:nth-of-type(2)>TD>TABLE>TBODY>TR>TD:nth-of-type(4)>DIV:nth-of-type(2)>TABLE>TBODY>TR:nth-of-type(2)>TD>DIV>DIV>DIV>INPUT" BUTTON=0
here is the element itself when using the web dev inspector thing and clicking the text box enabling typing:
Code: Select all
<input id="message_input" name="message_input" class="player_message_input" style="" maxlength="160" onkeydown=" KeyDown(event); " onkeyup=" KeyUp(event); " onmouseover=" iPhone_InputNoZoom.MouseOver(); " onmouseup=" iPhone_InputNoZoom.MouseUp(); if(g_UA.iOS ) { GetEl('video_td').style.verticalAlign='bottom'; } " ondrop=" event.preventDefault(); if(t.nDragUserId && t.g_hUsers[t.nDragUserId] ) this.value = this.value + ' ' + t.g_hUsers[t.nDragUserId].username + ' '; t.nDragUserId=0; this.classList.remove('highlight_bg'); this.style.backgroundColor='transparent'; this.focus(); this.value=this.value; " ondragover=" event.preventDefault(); this.style.backgroundColor=''; this.classList.add('highlight_bg'); " ondragleave=" this.style.backgroundColor='transparent'; this.classList.remove('highlight_bg'); " autocomplete="off" type="text">
here is a line of code one of the imacros record modes created when i clicked the "send" button seen in the screenshot above"
Code: Select all
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:send_button
im at my wits end. I've begun to understand a TEENY bit of how imacros works, and maybe i can fix it if i can figure out how to do maybe a coordinate click command (but i cant even figure how to get the coordinates). im thinking maybe a coordinate click to click in the box to enable typing, and another to hit the send button???? maybe there is a way to keep the text box typing enabled when i start my keypress loop so i can just click the right area manually and then have it start instead of it just disabling when i click the imacros sidebar??? maybe use KEY=13 to have it hit enter to send instead of needing to click send? bypass the clicking thing all together somehow?? this is over my head. i think maybe if i learn how to manually edit the new SELECTOR="HTML>BODY>etc" thing i can get it working, but i get lost when it says like "nth-of-type(5)" and all that, so i dont know what to do.
please help me if youre so kind! im willing to paypal somebody if thats what they need to help me out. im fine switching to chrome or a diff version or firefox/imacros if needed.
thank you so much in advance!
I