【问题标题】:How to go to extracted links with iMacros?如何使用 iMacros 提取链接?
【发布时间】:2014-02-26 19:26:11
【问题描述】:

我无法真正理解 iMacros 的语法。
我正在尝试做的事情。
1) 转到我博客的第一页
2) 查找包含单词“post”的链接
3) 转到第 2 步中找到的链接
4) 返回上一页
5) 找到另一个相同的链接
6)如果没有相同的链接,找到带有“next”字样的链接(表示下一页)
7) 转到该页面
8) 返回第 2 步

听起来像是个计划。然后脚本将打开页面上的所有帖子,保存它们并转到另一个页面。
我怎样才能做到这一点?我尝试了一些带有 TAG 和 POS 属性的东西,但它们只显示错误

【问题讨论】:

    标签: imacros


    【解决方案1】:

    你错了。 iMacros 无法做到这一点。 iMacros 不能执行 IF 子句。为此,您必须使用 JavaScript 脚本。

    1) 转到我博客的第一页 2)查找包含单词“post”的链接 3) 转到第 2 步中找到的链接 4) 返回上一页 5)找到另一个相同的链接 6)如果没有相同的链接,找到带有“next”字样的链接(表示下一页) 7) 转到该页面 8) 返回第2步

    这就是你要问的。

    var macro;
    
    macro ="CODE:";
    macro +="URL GOTO=www.myblog.com"+"\n";
    
    
    var macro1;
    
    macro1 ="CODE:";
    macro1 +="TAG POS=1 TYPE=A ATTR=TXT:*post* EXTRACT=HREF"+"\n";
    
    var macro2;
    
    macro2 ="CODE:";
    macro2 +="URL GOTO={{link}}"+"\n";
    
    var macro3;
    
    macro3 ="CODE:";
    macro3 +="TAG POS=1 TYPE=A ATTR=TXT:*next* EXTRACT=HREF"+"\n";
    
    //go to link
    iimPlay(macro)
    
    //extract the link on page with text post
    iimPlay(macro1)
    
    var link=iimGetLastExtract();
    
    //if there is such a link go to it
    if(link!="#EANF#")
    {
    
    iimSet("link",link)
    iimPlay(macro2)
    
    }
    
    //go to previous page
    iimPlay(macro)
    
    //extract the link with text post
    iimPlay(macro1)
    
    link=iimGetLastExtrac();
    
    //if there is not a link like that extract link with text next
    if(link=="#EANF#")
    {
    
    //extract link with text next
    iimPlay(macro3)
    
    var next_link=iimGetLastExtract();
    
    //if there is a link with text next navigate to it
    if(next_link!="#EANF#")
    {
    
    //navigate to link with text 
    iimSet("link",next_link)
    iimPlay(macro2)
    
    }
    
    }
    

    因此,尝试解决此问题,您将获得宏的答案。这必须放在 .js 文件中,并且没有其他扩展名!

    【讨论】:

    • 非常感谢!太好了。
    猜你喜欢
    • 1970-01-01
    • 2014-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多