は、このHTML私はMonitor $300
とKeyboard $20
を解析するXPathを使用しXPathを使用してHTML要素のテキストコンテンツを取得しますか?
<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の
//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 [("カートに入れる ")]]/p'を実行し、次に' textContent'プロパティにアクセスしてプレーンテキストの内容を取得します。 –