JavaScript 不适用于 iMacros (JQuery)

JavaScript won't work in iMacros (JQuery)

我正在尝试在 Twitter 中批量取消关注。我在 Windows 8.1 64 位上使用 Firefox 55.0.2 64 位。它有效,当我浏览到 https://twitter.com/following 然后在开发者控制台中输入以下内容时

$('.user-actions-follow-button').click()

执行上述操作会取消关注页面上的所有人。 但是当我在 iMacros 中尝试时。它加载页面,然后就停在那里,并在 60 秒后超时。没有报错。代码如下

VERSION BUILD=9030808 RECORDER=FX
TAB T=1
URL GOTO=https://twitter.com/following
URL GOTO=javascript:{$('.user-actions-follow-button').click();}

您无法再使用此功能。按照 http://wiki.imacros.net/iMacros_for_Firefox#Version_History

The following were never officially supported and had to be removed as well, since Firefox no longer allows access to the page DOM from the browser context (only frame scripts can do so now)

  • No access to webpage DOM from javascript in .js files (window, content objects) or macros (URL GOTO=javascript:...),

所以 URL GOTO=javascript: 不再有效了。


您可以像这样遍历所有取消关注按钮:

unfollow.js内容:

iimSet("var_url", "https://twitter.com/following");
iimPlay("Open URL.iim");

var count = 1;
do {
    iimSet("var_loop", "R" + count);
    var result = iimPlay("unfollow.iim");
    count++;
} while (result == 1);

打开URL.iim内容

URL GOTO={{var_url}}

unfollow.iim内容

TAG POS=1 TYPE=DIV ATTR=class:SidebarCommonModules
TAG POS={{var_loop}} TYPE=BUTTON ATTR=TXT:Unfollow

只要宏播放成功,JS 循环就会保持 运行,即返回 1。当它不再播放时,页面上现在没有任何可取消关注的内容,它以一个元素结束发现错误。