如何使用 imacros xpath 提取特定文本
How to extract specific text with imacros xpath
我在网站上有这段代码:
<div id="1234">
<li>
text I want to extract
<span>
text I don't want to extract
</span>
</li>
</div>
我正在使用这个 IMACROS 代码,但它提取了两个文本:
TAG XPATH="id('1234')/li[1]" EXTRACT=TXT
我试图在最后使用 text() 但出现错误。
我建议在您的代码中再添加一行:
TAG XPATH="id('1234')/li[1]" EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.split('<span>')[0];")
对于您的具体情况 Shugar 的代码稍作调整即可。拆分 \n
并提取 [1]
:
TAG XPATH="id('1234')/li[1]" EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.split('\n')[1];")
PROMPT {{!EXTRACT}}
如果您想要更通用的方法,您可以得到 li[1]
并在 [0]
处按 span
的内容拆分:
TAG XPATH="id('1234')/li[1]" EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}
SET !EXTRACT NULL
TAG XPATH="id('1234')/li[1]/span" EXTRACT=TXT
SET !EXTRACT EVAL("'{{!VAR1}}'.split('{{!EXTRACT}}')[0];")
PROMPT {{!EXTRACT}}
我在网站上有这段代码:
<div id="1234">
<li>
text I want to extract
<span>
text I don't want to extract
</span>
</li>
</div>
我正在使用这个 IMACROS 代码,但它提取了两个文本:
TAG XPATH="id('1234')/li[1]" EXTRACT=TXT
我试图在最后使用 text() 但出现错误。
我建议在您的代码中再添加一行:
TAG XPATH="id('1234')/li[1]" EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.split('<span>')[0];")
对于您的具体情况 Shugar 的代码稍作调整即可。拆分 \n
并提取 [1]
:
TAG XPATH="id('1234')/li[1]" EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.split('\n')[1];")
PROMPT {{!EXTRACT}}
如果您想要更通用的方法,您可以得到 li[1]
并在 [0]
处按 span
的内容拆分:
TAG XPATH="id('1234')/li[1]" EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}
SET !EXTRACT NULL
TAG XPATH="id('1234')/li[1]/span" EXTRACT=TXT
SET !EXTRACT EVAL("'{{!VAR1}}'.split('{{!EXTRACT}}')[0];")
PROMPT {{!EXTRACT}}