Scrapy:命令覆盖以前的导出文件
Scrapy: command to overwrite previous export file
设置
我通过终端中的标准命令将我的数据导出到 .csv 文件 (Mac OS),例如
scrapy crawl spider -o spider_ouput.csv
问题
导出新的 spider_output.csv
时,Scrapy 会将其附加到现有的 spider_output.csv
。
我可以想到两个解决方案,
- 命令 Scrapy 覆盖而不是追加
- 命令终端在抓取之前删除现有的
spider_output.csv
我读到(令我惊讶的是)Scrapy 目前 isn't able to do 1. Some people have proposed , but I can't seem to get 可以工作。
我找到了解决方案 2 的 ,但也无法正常工作。
有人可以帮助我吗?也许还有我没有想到的第三种解决方案?
此功能的 scrapy 存在未解决的问题:
https://github.com/scrapy/scrapy/issues/547
问题线程中提出了一些解决方案:
scrapy runspider spider.py -t json --nolog -o - > out.json
或者只删除 运行 scrapy spider 之前的输出:
rm data.jl; scrapy crawl myspider -o data.jl
选项 -t
定义文件格式,如 json、csv、...
选项 -o FILE
将抓取的项目转储到文件中(使用 -
作为标准输出)
>filename
管道输出到文件名
我们总共得到覆盖以前的导出文件:
替换输出文件而不是附加:
scrapy crawl spider -t csv -o - >spider.csv
或 json 格式:
scrapy crawl spider -t json -o - >spider.json
使用大O:
scrapy crawl spider -O spider_ouput.csv
设置
我通过终端中的标准命令将我的数据导出到 .csv 文件 (Mac OS),例如
scrapy crawl spider -o spider_ouput.csv
问题
导出新的 spider_output.csv
时,Scrapy 会将其附加到现有的 spider_output.csv
。
我可以想到两个解决方案,
- 命令 Scrapy 覆盖而不是追加
- 命令终端在抓取之前删除现有的
spider_output.csv
我读到(令我惊讶的是)Scrapy 目前 isn't able to do 1. Some people have proposed
我找到了解决方案 2 的
有人可以帮助我吗?也许还有我没有想到的第三种解决方案?
此功能的 scrapy 存在未解决的问题: https://github.com/scrapy/scrapy/issues/547
问题线程中提出了一些解决方案:
scrapy runspider spider.py -t json --nolog -o - > out.json
或者只删除 运行 scrapy spider 之前的输出:
rm data.jl; scrapy crawl myspider -o data.jl
选项 -t
定义文件格式,如 json、csv、...
选项 -o FILE
将抓取的项目转储到文件中(使用 -
作为标准输出)
>filename
管道输出到文件名
我们总共得到覆盖以前的导出文件:
替换输出文件而不是附加:
scrapy crawl spider -t csv -o - >spider.csv
或 json 格式:
scrapy crawl spider -t json -o - >spider.json
使用大O:
scrapy crawl spider -O spider_ouput.csv