所以基本上我正在从网络上抓取数据,并且我有一个项目文件导入到我的主蜘蛛文件中。现在,当我抓取数据并将其存储在容器中并将其另存为 csv 时,链接列最终总是成为 csv 中的第一列。如何设置自定义列的位置?
pName = response.css('#search .a-size-medium').css('::text').extract() pPrice = response.css('#search .a-price-whole').css('::text').extract() imgs = response.css('.sbv-product-img , .s-image-fixed-height .s-image').css('::attr(src)').extract() for prod in zip(pName , pPrice , imgs): items['prodName'] = prod[0] items['price'] = prod[1] items['imgLink'] = prod[2] yield items
P粉3916779212024-04-05 10:51:21
使用 settings.py
文件或蜘蛛 custom_settings
属性中的 FEED_EXPORT_FIELDS
设置。这些列将按照您在设置值中设置的顺序排列。
例如:
class MySpider(scrapy.Spider): custom_settings = { "FEED_EXPORT_FIELDS": ["prodName", "price", "imgLink"] }
或在settings.py
中:
FEED_EXPORT_FIELDS=["prodName", "price", "imgLink"]