我正在抓取一个网站
这是我的路径
response.xpath(".//div[@id='search_listing']/ul[@id='listings']/li[@class='item']")
我得到了空洞的结果,但是如你所见,有值:
我在起诉scrapy
答案 0 :(得分:3)
查看item
课程后的额外空格:
<li class="item ">...
HERE^
这就是您的@class='item'
条件不起作用的原因。您必须使用contains()
进行部分匹配:
.//div[@id='search_listing']/ul[@id='listings']/li[contains(@class, 'item')]
我会考虑使用CSS选择器来获得更简洁的定位技术:
response.css("#search_listing #listings .item")