2017-09-30 80 views
0

我正在使用iMacros尝试从每个列表项中获取文本。我简单的HTML看起来像这样...iMacros从HTML列表中获取文本

<ul id="fruit_list"> 
    <li>Apple</li> 
    <li>Pear</li> 
    <li>Banana</li> 
    <li>Grape</li> 
</ul> 

而且我iMacros的脚本这样的..

TAB T = 1 URL GOTO =文件:/// C:/test.html TAG POS = 1个TYPE = UL ATTR = ID:fruit_list EXTRACT = TXT

结果我得到的回复是...

AppleApplePearAppleApplePearBananaAppleApplePearAppleApplePearBananaGrape 

当什么,我希望是......

Apple Pear Banana Grape 

任何人都可以告诉我我做错了什么吗?

回答

1

似乎并不容易EXTRACT选项覆盖无序列表的方式...最简单的方法可能是提取HTML代码并使用SET/EVAL解析JavaScript中的代码。

它可能看起来像这样

TAG POS=1 TYPE=UL ATTR=ID:fruit_list EXTRACT=HTM 
SET neat_list EVAL("var e_s = '{{!EXTRACT}}'; e_s.substring(e_s.indexOf('<li>'), e_s.lastIndexOf('<\\/li>')).replace(/(<li>|<\\/li>)/g, '').replace(/ +/g, ' ');") 
PROMPT {{neat_list}} 

使用正则表达式删除所有的HTML标签和额外的空格只是保持你想要的LI-项目数据。