通过检查页面的HTML代码片段:
<div class="wBox">
<ul class="detailListHorizontal" id="firstBoxHeight">
<li class="">
<label class="">Category</label>
<a href="https://www.boat24.com/en/powerboats/" title="Power Boats" class="">Power Boats</a>
<li class="">
<li class="">
<label class="">Boat Type</label>
<a href="https://www.boat24.com/en/powerboats/center-console-boat/?typ=2119" title="Center console boat" class="">Center console boat</a>
<li class="">
我需要刮Power Boats
和Center console boat
字符串。
到目前为止,这是我尝试过的:
response.xpath("//label[contains(.,'Category')]/following-sibling::text()").extract() = empty list
response.xpath("//label[contains(.,'Category')]/a/text()").extract() = empty list
response.xpath("//label[contains(.,'Category')]/text()").extract() = returns 'Category'
有人有什么想法吗?
这个XPath
//label[. = 'Category' or . = 'Boat Type']/following-sibling::a/text()
将选择那些的文本a
以下元素labels
具有字符串值'Category'
或'Boat Type'
,
Power Boats
Center console boat
按照要求。
如果label
要素有空白的变化,替换. =
用normalize-space() =
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句