我真的无法理解 iMacros 语法。
我正在努力做什么。
1)转到我的博客的第一页
2)查找包含单词“post”的链接
3) 转到步骤 2 中找到的链接
4) 返回上一页
5)找到另一个相同的链接
6) 如果没有相同的链接,则查找带有“下一页”字样的链接(意思是下一页)
7) 转到该页面
8) 返回步骤2

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

有帮助吗?

解决方案

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

1)转到我的博客的第一页2)查找包含单词“ post”的链接3)转到步骤2 2 4)返回上一页5)找到另一个相同的链接6)如果没有相同的链接,请找到与下一个“ word(这意味着下一页)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 文件中并且没有其他扩展名!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top