2017-08-08 20 views
-1

我是新來scrapy,我不得不從多個類名和類名稱的標籤中提取文本類名稱的數據包含空格和連字符。不能夠提取使用scrapy含空格和連字符

例子:

<div class="info> 
    <span class="price sale">text1</span> 
    <span class="title ng-binding">some text</span> 
</div> 

當我使用的代碼:

response.xpath("//span[contains(@class,'price sale')]/text()").extract() 

我能夠得到的text1但是當我使用:

response.xpath("//span[contains(@class,'title ng-binding')]/text()").extract() 

我得到一個空列表。爲什麼會出現這種情況,如何處理?

+0

這是奇怪的,它爲我工作(在兩個Scrapy 1.3.3和1.4.0測試)。 –

回答

2

你要找的表達式爲:

//span[contains(@class, 'title') and contains(@class, 'ng-binding')] 

我強烈建議的XPath可視化工具,它可以幫助你輕鬆調試XPath表達式。它可以在這裏找到:

http://xpathvisualizer.codeplex.com/

或者利用CSS嘗試

response.css("span.title.ng-binding") 

或者沒有與ng-binding該元素是通過JavaScript/AJAX加載的機會,因此不包含在初始服務器響應。

相關問題