2017-07-09 82 views
0

我試圖運行通過CLI使用自定義分隔符scrapy出口這樣CSV_DELIMITER參數:Scrapy CLI輸出不工作

scrapy runspider beneficiari_2016.py -o beneficiari_2016.csv -t csv -a CSV_DELIMITER="\n"

出口完美的作品,但是分隔符仍然是默認的逗號( 「」)。

請讓我知道,如果你有任何想法如何修復。謝謝!

的代碼:

import scrapy 
from scrapy.item import Item, Field 
import urllib.parse 

class anmdm(Item): 
    nume_beneficiar = Field() 

class BlogSpider(scrapy.Spider): 
    name = 'blogspider' 
    start_urls = ['http://www.anm.ro/sponsorizari/afisare-2016/beneficiari? 
    page=1'] 
    def parse(self, response): 
     doctor = anmdm() 
     doctors = [] 
     for item in response.xpath('//tbody/tr'): 
      doctor['nume_beneficiar'] = 
     item.xpath('td[5]//text()').extract_first() 
      yield doctor 
     next_page = response.xpath("//ul/li[@class='active']/following- 
     sibling::li/a/@href").extract_first() 
     if next_page is not None: 
      next_page = response.urljoin(next_page) 
      print(next_page) 
      yield response.follow(next_page, self.parse) 
+0

檢查https://stackoverflow.com/a/28097557/2572383 –

回答

0

CSV_DELIMITER需要在settings被改變,而不是像一個蜘蛛參數-a

要在命令行中使用-s更改設置:

scrapy runspider beneficiari_2016.py -o beneficiari_2016.csv -t csv -s CSV_DELIMITER="\n" 
+0

感謝您的反饋。可悲的是,添加'-s CSV_DELIMITER =「\ n」'不起作用 - CSV分隔符仍然是默認的逗號。僅供參考,我在Mac上使用Scrapy 1.4.0和Python3。 – Stefan