1. 程式人生 > >scrapy輸出csv檔案資料多空行問題解決

scrapy輸出csv檔案資料多空行問題解決

使用scrapy命令列將資料儲存為csv檔案時,發現csv多空行。

檢視原始碼scrapy.exporters.CsvItemExporter,在io.TextIOWrapper加入引數newline='',問題就解決啦。

  1. class CsvItemExporter(BaseItemExporter):
  2. def __init__(self, file, include_headers_line=True, join_multivalued=',', **kwargs):
  3. self._configure(kwargs, dont_fail=True)
  4. if not self.encoding:
  5. self.encoding = 'utf-8'
  6. self.include_headers_line = include_headers_line
  7. self.stream = io.TextIOWrapper(
  8. file,
  9. newline='',
  10. line_buffering=False,
  11. write_through=True,
  12. encoding=self.encoding
  13. ) if six.PY3 else file
  14. self.csv_writer = csv.writer(self.stream, **kwargs)
  15. self._headers_not_written = True
  16. ...