如何使用 iMacros 识别对象 属性

how to identify an object property with iMacros

我用 vba (excel) 和 iMacros 写了一个宏。当我在一个字段中记录点击时,这是我得到的信息:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:gwt-uid-1317

我遇到的问题是该字符串末尾的数字每次都在变化。我可以点击它:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:gwt-uid-*

但我需要这个数字,因为接下来的 3 个字段是基于那个数字的。例如,如果是1317,则下一个数字是1326。如果是1350,则下一个数字是1359。

有没有办法捕获该数字?感谢您的帮助.....

嗯...,在询问 Qt 时,您应该总是提及您的 Environment/FCI(完整配置信息),并非所有(iMacros)命令都为所有 Browsers/Versions 实现,但是好的,这个一个适用于所有浏览器:

=> 是的,在你的 Field + 'EVAL()' & 'match()' 上使用 'EXTRACT=HTM' 很简单,或者我更喜欢 'split()' (x2),我发现它比 'match()'.

这会给 stg 这样的:

SET !EXTRACT NULL
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:gwt-uid-* EXTRACT=HTM
SET gwt-uid_Nb EVAL("var s='{{!EXTRACT}}'; var y,z; y=s.split('gwt-uid-'); z=y[1].split(' '); z[0];")
PROMPT _{{gwt-uid_Nb}}_

=> 将第二个 'split()' 中的 'Space' 替换为 'EXTRACT=HTM' 中 4 位数字之后的唯一 Char/String...(但要避免使用双引号和反斜杠...!)

(未测试,因为您没有提供页面的 URL...)

而且您可能甚至不需要 ID-Number,只需将 "Relative Positioning" 用于接下来的 3 个字段...