2017-06-10 49 views
0

建立發行刮頁面

我與scrapy刮房屋廣告的UL部分。

我成功收集每個廣告的大部分住房特徵,隨後用大熊貓進行分析。


問題

我似乎無法湊了一定ul廣告頁面。這個問題涉及任何房屋廣告頁面上的「主要功能」和「額外」部分:例如this one

當我嘗試刮擦元素時,我收到一個空白返回。


嘗試次數

我試過以下,以獲得 '附加'

response.css("section.divFeatures") # empty 

response.css("div.detail-section-content::text", # gives me the property location (strange) 
     ).extract() 

response.css("#divFeatures").extract() # empty 

這個名單去對。

我做錯了什麼,以及我如何成功獲取元素?

+0

這是因爲該數據被通過JavaScript裝載有[此](http://www.fotocasa.es/ws/DetailModular.asmx/GetPrincipalFeatures?adId=142804619&promotionId=0&tti=3&periodicityId=3&culture=en-US)URL – Casper

+0

謝謝Casper!只是爲了我的理解,你評論中的網址會被刮掉嗎?如果是這樣,你是否從某個頁面的代碼中獲取它? – LucSpan

+0

是的,該網址將被刮掉。我不確定是否有更好的方法來查看數據來自哪裏,但我只是在Chrome中打開檢查窗口,然後使用「網絡」選項卡查看加載的數據。最終你會找到這樣一個包含你所需信息的頁面。 – Casper

回答

0

您可以直接查詢@Casper提到的那個頁面......或者您可以使用運行javascript的引擎,並像編輯常規webbrowser一樣編輯DOM,並在編輯後獲取html。這些將在網頁上運行所有javascript,並且具有與在Chrome中打開檢查面板時看到的結構完全相同的結構。您可以使用Selenium + ChromeDriver(+ XVFB如果您想運行無頭)或phantomjs等。