2017-02-19 2 views
-1

助けてください。私のスパイダーがcsvで結果をインポートするのに問題があり、出力上のすべてのアイテムが一列になっていました。

はここでここで私が出力するCSV形式に以下のようなリストの項目をしたいCSV

Price        Title 
RM 135 000,RM 361 000,.....  Title1, Title 2, Title 3,....... 

の私の出力である私のクモ

import scrapy 
from mudah.items import MudahItem 

class MudahSpider(scrapy.Spider): 
name = "mudah" 
allowed_domain = ["mudah.my"] 
start_urls = ["http://www.mudah.my/Perak/Properties-for-sale-2001? lst=0&fs=1&w=106&cg=2001&so=1&st=s"] 

def parse(self,response): 
for row in response.xpath('//*[@id="list-view-ads"]'):  
item = MudahItem() 
    item['Title'] = sel.xpath('//*/div/ul/li[2]/div/div[1]/div[1]/h2[@class="list_title"]/a/text()').extract() 
    item['Price'] = sel.xpath('//*/div/ul/li[2]/div/div[1]/div[1]/div/div[@class="ads_price"]/text()').extract() 
    yield item 

です。

Price    Title 
$ 135 000.  Title1 
$ 1 080 000  Title2 
$ 361 000   Title3 
.     . 
.     . 
.     . 

助けてください。ありがとう。

+0

あなただけ一緒に、すべての価格とタイトルが含まれている1つのアイテムを、返さ:

はデフ(自己、応答)を解析します。 1の代わりに複数の項目を出力するように変更する – eLRuLL

答えて

-1

すべての行を1つずつ繰り返します。 項目= MudahItem()

for row in response.xpath("//*/div/ul/li[2]/div/div[1]/div[1]"): 

    item['Title'] = sel.xpath('h2[@class="list_title"]/a/text()').extract() 
    item['Price'] = sel.xpath('div/div[@class="ads_price"]/text()').extract() 
    yield item 
関連する問題