Scrapy:命令以覆盖先前的导出文件

Luc*_*pan 2 python export overwrite scrapy

设定

我通过终端(Mac OS)中的标准命令将数据导出到.csv文件

scrapy crawl spider -o spider_ouput.csv 
Run Code Online (Sandbox Code Playgroud)

问题

导出新的spider_output.csvScrapy时,会将其追加到现有的spider_output.csv

我可以想到两种解决方案,

  1. 命令Scrapy覆盖而不是附加
  2. 命令终端spider_output.csv在爬网之前删除现有的

我已经读到(令我惊讶)Scrapy目前无法执行1。有些人提出了解决方法,但是我似乎无法使其正常工作。

我找到了解决方案2 的答案,但也无法使其正常工作。

有人可以帮我吗?也许我没有想到过第三个解决方案?

Gra*_*rus 8

对于此功能,scrapy存在一个开放问题:https : //github.com/scrapy/scrapy/issues/547

问题线程中提出了一些解决方案:

scrapy runspider spider.py -t json --nolog -o - > out.json
Run Code Online (Sandbox Code Playgroud)

或者只是在运行scrapy spider之前删除输出:

rm data.jl; scrapy crawl myspider -o data.jl
Run Code Online (Sandbox Code Playgroud)