2016-07-24 38 views
1

作爲新用戶,我設法制作了一個蜘蛛,可以連接電子商務網站並提取 每個產品的標題和變體以及輸出CSV文件和產品系列,但我希望 這是一個變體,行,請有人可以幫助我在我的項目中前進。scrapy CSV寫作

我期待着來到這個問題,但不幸的是我找不到答案。

我蜘蛛:

import scrapy 
from w3lib.html import remove_tags 
from products_crawler.items import ProductItem 


class DemostoreSpider(scrapy.Spider): 
    name = "demostore" 
    allowed_domains = ["adns-grossiste.fr"] 
    start_urls = [ 
     'http://adns-grossiste.fr/17-produits-recommandes', 
] 
download_delay = 0.5 

def parse(self, response): 
    for category_url in response.css('#categories_block_left > div > ul > li ::attr(href)').extract(): 
     yield scrapy.Request(category_url, callback=self.parse_category, meta={'page_number': '1'}) 

def parse_category(self, response): 
    for product_url in response.css('#center_column > ul > li > div > div.right-block > h5 > a ::attr(href)').extract(): 
     yield scrapy.Request(product_url, callback=self.parse_product) 

def parse_product(self, response): 
    item = ProductItem() 
    item['url'] = response.url 
    item['title'] = response.css('#center_column > div > div.primary_block.clearfix > div.pb-center-column.col-xs-12.col-sm-7.col- md-7.col-lg-7 > h1 ::text').extract_first() 
    item['Déclinaisons'] = remove_tags(response.css('#d_c_1852 > tbody >tr.combi_1852.\31 852_155.\31 852_26.odd > td.tl.sorting_1 > a > span ::text').extract_first() or '') 
    yield item 

樣本CSV願望: image CSV

+0

[Scrapy管道以正確格式導出csv文件的可能的副本](https://stackoverflow.com/questions/29943075/scrapy-pipeline-to-export-csv-file-in-the-right-format ) –

回答

1

退房official docummentation here

總之有兩種做法,在simpliest一個將只是使用抓取命令參數簡稱--output-o。例如:

scrapy crawl myspider -o myspider.csv 

Scrapy會自動將轉化項目轉換爲csv文件。有關更詳細的方法,請查看開始處張貼的文檔頁面。