我正在努力用XPATH ...
来定位一些特定的HTML使用CSS,我知道正确的定位是:
html > body > div.page-content > div.container > div.myaccount > div > div:nth-child(4) > ul > [data-coin="BTC"] > div > div:nth-child(2)
HTML是:
<html lang="en">
<body style="">
<div class="page-content">
<div class="container" style="padding-top:10px;padding-bottom:50px">
<div class="myaccount">
<div class="row">
<div class="col-md-12">
<ul class="listgroup">
<li class="hidden-xs hidden-sm list-group-item tradeitem" data-coin="BTC" data-coindisplay="BTC">
<div class="row marketrow">
<div class="col-sm-2"><img src="/public/img/coinmd/bitcoin.png?v=68" style="height:37px"> Bitcoin</div>
<div class="col-sm-2">$23329.28</div>
<div class="col-sm-2">$23329.28</div>
<div class="col-sm-2">$370,105,221,964</div>
<div class="col-sm-1"><span class="moveup">14.76%</span></div>
<div class="col-sm-3">
<a href="/buy/btc" class="btn btn-default btn-sm">Buy BTC</a>
<a href="/sell/btc" class="btn btn-default btn-sm">Sell BTC</a>
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
&#13;
我尝试过的XPATH是:
//*[contains(concat( " ", @class, " " ), concat( " ", "col-sm-2", " " ))]
^这有效,但过于通用,因为HTML元素定位每天都会改变。它也没有考虑祖父母HTML的数据属性。
所以我的问题是我需要什么样的XPATH才能专门针对这个元素(就像我可以用CSS一样)?
<div class="col-sm-2">$23329.28</div>
&#13;
答案 0 :(得分:1)
感谢为此帖做出贡献的人。
我发现的答案是:
// * [@数据硬币= 'BTC'] / DIV / DIV [2])[1]