使用Selector解析的结果和老师视频上讲的不一样
来源:14-11 获取和解析列表页 - 2

慕标5907691
2020-01-23
<ul class='nav-abstract nav-index'>
<li><h3 class="fz12"><span>劳保用品 / 日杂 / 易耗品</span></h3><a href="link1.html">first item</a></li>
<li><h3 class="fz12"><span>劳保用品 / 日杂 / 易耗品2</span></h3><a href="link2.html">second item</a></li>
<li><h3 class="fz12"><span>劳保用品 / 日杂 / 易耗品3</span></h3><a href="link3.html">third item</a></li>
<li><h3 class="fz12"><span>劳保用品 / 日杂 / 易耗品4</span></h3><a href="link4.html">fourth item</a></li>
<li><h3 class="fz12"><span>劳保用品 / 日杂 / 易耗品5</span></h3><a href="link5.html">fifth item</a></li>
</ul>
代码如下:
sel = Selector(text=html)
all_li = sel.xpath("//ul[@class='nav-abstract nav-index']/li")
for li in all_li:
print(li.xpath("//h3/span/text()").extract()。
解析结果:
['劳保用品 / 日杂 / 易耗品', '劳保用品 / 日杂 / 易耗品2', '劳保用品 / 日杂 / 易耗品3', '劳保用品 / 日杂 / 易耗品4', '劳保用品 / 日杂 / 易耗品5']
['劳保用品 / 日杂 / 易耗品', '劳保用品 / 日杂 / 易耗品2', '劳保用品 / 日杂 / 易耗品3', '劳保用品 / 日杂 / 易耗品4', '劳保用品 / 日杂 / 易耗品5']
['劳保用品 / 日杂 / 易耗品', '劳保用品 / 日杂 / 易耗品2', '劳保用品 / 日杂 / 易耗品3', '劳保用品 / 日杂 / 易耗品4', '劳保用品 / 日杂 / 易耗品5']
['劳保用品 / 日杂 / 易耗品', '劳保用品 / 日杂 / 易耗品2', '劳保用品 / 日杂 / 易耗品3', '劳保用品 / 日杂 / 易耗品4', '劳保用品 / 日杂 / 易耗品5']
['劳保用品 / 日杂 / 易耗品', '劳保用品 / 日杂 / 易耗品2', '劳保用品 / 日杂 / 易耗品3', '劳保用品 / 日杂 / 易耗品4', '劳保用品 / 日杂 / 易耗品5']
期望结果 :
'劳保用品 / 日杂 / 易耗品'
'劳保用品 / 日杂 / 易耗品2'
'劳保用品 / 日杂 / 易耗品3'
'劳保用品 / 日杂 / 易耗品4'
'劳保用品 / 日杂 / 易耗品5'
写回答
1回答
-
bobby
2020-01-25
print(li.xpath("//h3/span/text()").extract()。
改为 print(li.xpath("/h3/span/text()").extract()试试022020-07-05
相似问题