imacros - 如果找不到标签则忽略代码

imacros - ignore code if tag not found

URL GOTO=my site
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:login ATTR=NAME:name CONTENT=name
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:login ATTR=NAME:password CONTENT=pass
TAG POS=1 TYPE=BUTTON FORM=NAME:login ATTR=ID:s1
WAIT SECONDS=3
ONDOWNLOAD FOLDER=* FILE=image.jpg WAIT=YES
TAG POS=1 TYPE=IMG ATTR=HREF:*captcha* CONTENT=EVENT:SAVEPICTUREAS
WAIT SECONDS=3
TAB OPEN
TAB T=2
SET !EXTRACT_TEST_POPUP NO
URL GOTO=site of service
WAIT SECONDS=3
TAG POS=1 TYPE=INPUT:TEXT FORM=... ATTR=NAME:username CONTENT=...
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:... ATTR=NAME:password CONTENT=...
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:... ATTR=NAME:pict CONTENT=image.jpg
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:... ATTR=VALUE:Send
WAIT SECONDS=3
TAG POS=6 TYPE=TD ATTR=* EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
tab close
TAB T=1
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:login ATTR=ID:recaptcha_response_field CONTENT={{!CLIPBOARD}}
TAG POS=1 TYPE=BUTTON FORM=NAME:login ATTR=ID:s1
WAIT SECONDS=3

我用这个代码来解决验证码..

有时没有验证码..

我想让这个代码只有在有验证码的情况下才有效..

在没有出现验证码(或要保存的图像)的情况下忽略以下行..

我听说这可以通过 Javascript ..

但是我找不到办法做到这一点..

有什么帮助吗? ..

是的,您可以使用 JavaScript。

基本上,您需要做的是检查验证码字段是否存在。也许是这样的。

function isCaptchaExists() {
    var macro = "TAG POS=1 TYPE=IMG ATTR=HREF:*captcha* EXTRACT=HTM";
    var retcode = iimPlayCode(macro);

    return retcode < 0;
}