网上搜出来的、通过创建类的办法调用settings属性并指定表头顺序的案例过时了。scrapy1.6之后已经没有scrapy.conf 和scrapy.scrapy.contrib。
以下是2021.10月更新的代码
#在spiders文件夹下创建py文件,代码如下:
from scrapy.utils.project import get_project_settings
from scrapy.exporters import CsvItemExporter
class MyProjectCsvItemExporter(CsvItemExporter):
settings=get_project_settings()
def __init__(self, *args, **kwargs):
delimiter = settings['CSV_DELIMITER']
kwargs['delimiter'] = delimiter
fields_to_export = settings['FIELDS_TO_EXPORT']
if fields_to_export :
kwargs['fields_to_export'] = fields_to_export
super(MyProjectCsvItemExporter, self).__init__(*args, **kwargs)
#在settings中增加变量FIELDS_TO_EXPORT,值为列表,列表里放入按需排序的item名字
FIELDS_TO_EXPORT = [
'name',
'name_url',
&#