2017-09-30 58 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-項目數據。