iMacros if Заявление [Нужна помощь]

В настоящее время я пытаюсь сделать оператор if/else, однако мне не удастся заставить его работать...

Это мой код:

SET !ERRORIGNORE YES
URL GOTO=https://en.wikipedia.org/wiki/Main_Page
WAIT SECONDS=2
SET !VAR1 {{!URLCURRENT}}
PROMPT {{!VAR1}} 
WAIT SECONDS=2
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>UL>LI:nth-of-type(3)>A" BUTTON=0
WAIT SECONDS=2
SET !VAR2 {{!URLCURRENT}}
PROMPT {{!VAR2}}
SET !VAR3 EVAL("var d=\"{{!VAR1}}\"; var s=\"{{!VAR2}}\" ; if (d==s) {var x=https://www.google.de/;}x; else {var y=https://www.youtube.com;} y;")
URL GOTO={{!VAR3}}

(приглашение убедиться, что !VAR установлены правильно)

Например, я пытаюсь перейти в Википедию, сохранить веб-ссылку как VAR1 и перейти на другую страницу, для которой я установил VAR2. После этого я хочу сравнить их, проверить их и выбрать, если, как в этом случае, они разные (что, очевидно, так и есть), iMacros должны перейти на YouTube.

Кто-нибудь может помочь? Я не хочу использовать .js с моими iMacros, и я знаю, что это возможно, но я не знаю, как....

Я использовал этот код в качестве ссылки: ССЫЛКА ДЛЯ СЛЕДУЮЩАЯ ЦИТАТА И КОД

Один пример, который мне очень нравится, следующий: (Мне нужно включить свет в какой-то игре между 20:00 и 08:00, нажав кнопку включения/выключения на странице. Затем я использую:)

SET Light EVAL("var d=\"{{!NOW:hh}}\"; if ((d>7)&&(d<20)) {var x=0;} else {var x=1;} x;")
TAG POS={{Light}} TYPE=IMG ATTR=SRC:http://website.com/images/b_light_on_off.gif

person Max Frenter    schedule 17.01.2016    source источник


Ответы (1)


Хорошо, у меня это работает, добавил несколько комментариев

URL GOTO=https://en.wikipedia.org/wiki/Main_Page
WAIT SECONDS=1

'Set the VAR1 to the current url= https://en.wikipedia.org/wiki/Main_Page
SET !VAR1 {{!URLCURRENT}}
WAIT SECONDS=1
URL GOTO=https://en.wikipedia.org/wiki/Portal:Featured_content
WAIT SECONDS=1

'Set the VAR2 to the current url= https://en.wikipedia.org/wiki/Portal:Featured_content
SET !VAR2 {{!URLCURRENT}}
'   1.Now !VAR3 is our answer from the if statement
'   2.We need to assign the text from {{!VAR1}} to a var x,y,z,...
'     In this case, we use the letter d and s, and assign text with \"....\" to the var
'   3.We check if d and s are equal by if (d==s), there is also not equal (d!=s)
'     Or bigger(but only for numbers) (d>s) or smaller (d<s)
'   4.After the if we say what !VAR3 should become if the if statement is right
'     This is done by creating a new var (in this case the x)
'     However the output shall be again a text, so we assign x to https://www.google.de
'     And do this by assigning text to a var with  \"....\"        so in this case {var x = \"https://www.google.de\";}
'   5.After that we add the else, if the statement was false, and assign x to the text, which should
'         !Be VAR3  when the statement was wrong, and we do this again the same way        so in this case {var x=\"https://www.youtube.com\";}
'       6. At the end we "call" x and tell that whatever x has become, it is now !VAR3
SET !VAR3 EVAL("var d=\"{{!VAR1}}\"; var s=\"{{!VAR2}}\" ; if (d==s){var x = \"https://www.google.de\";} else {var x=\"https://www.youtube.com\";} x;") 

'checking if code worked (and it did)
URL GOTO={{!VAR3}}

'you can of course change the SET !VAR1 or !VAR2 to some text inside a page, or whatever you like
person Max Frenter    schedule 17.01.2016