scrapy 指定输出顺序csv

Posted on 2018-08-19 16:15  豪顿  阅读(50)  评论(0)    收藏  举报
在spider下,新增文件csv_item_exporter.py

from scrapy.conf import settings
from scrapy.exporters import CsvItemExporter

class MyProjectCsvItemExporter(CsvItemExporter):

def __init__(self, *args, **kwargs):
delimiter = settings.get('CSV_DELIMITER', ',')
kwargs['delimiter'] = delimiter

fields_to_export = settings.get('FIELDS_TO_EXPORT', [])
if fields_to_export :
kwargs['fields_to_export'] = fields_to_export

super(MyProjectCsvItemExporter, self).__init__(*args, **kwargs)
在setting里添加:
FEED_EXPORTERS = {
'csv': 'ncpjg.spiders.csv_item_exporter.MyProjectCsvItemExporter',
}#引入刚刚的,其中ncpjg是项目名称 ,需要自行改动自己的项目名称
FIELDS_TO_EXPORT = [
'chandi',
'chanping',
'suozaidi',
'price',
'varity'
]#这是指定输出顺序,可自行指定
##############
指定输出日志
LOG_FILE = "MySpider.log"

LOG_LEVEL = "INFO"
####################设置结束

下面是日志的一般概念
#日志等级:
  • CRITICAL - 严重错误(critical)
  • ERROR - 一般错误(regular errors)
  • WARNING - 警告信息(warning messages)
  • INFO - 一般信息(informational messages)
  • DEBUG - 调试信息(debugging messages)

通过在setting.py中进行以下设置可以被用来配置logging:

  1. LOG_ENABLED 默认: True,启用logging
  2. LOG_ENCODING 默认: 'utf-8',logging使用的编码
  3. LOG_FILE 默认: None,在当前目录里创建logging输出文件的文件名
  4. LOG_LEVEL 默认: 'DEBUG',log的最低级别
  5. LOG_STDOUT 默认: False 如果为 True,进程所有的标准输出(及错误)将会被重定向到log中。例如,执行 print "hello" ,其将会在Scrapy log中显示






博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3