<div>
<p>
<span class="abc">Monitor</span> <b>$300</b>
</p>
<a href="/add">Add to cart</a>
</div>
<div>
<p>
<span class="abc">Keyboard</span> $20
</p>
<a href="/add">Add to cart</a>
</div>
使用XPath我想分析Monitor $300
和Keyboard $20
。我用這個xpath
//div[a[contains(., "Add to cart")]]/p/text()
但它選擇<span class="abc">Monitor</span> <b>$300</b>
。我不想要標籤。我如何獲得文本?
'text()'不應該選擇元素。您使用的是什麼XML解析器? – choroba
@choroba'scrapy.selector.lxmlsel.HtmlXPathSelector' –
你如何獲得價值?在DOM Level 3單詞中,您可以選擇「p」元素,例如'// div [a [contains(。,「Add to cart」)]]/p'然後訪問'textContent'屬性來獲取純文本內容。 –