Heim > Fragen und Antworten > Hauptteil
Im Grunde sammle ich also Daten aus dem Web und habe eine Projektdatei in meine Haupt-Spider-Datei importiert. Wenn ich nun die Daten ergreife, sie in einem Container speichere und als CSV-Datei speichere, ist die verknüpfte Spalte am Ende immer die erste Spalte in der CSV-Datei. Wie lege ich die Position einer benutzerdefinierten Spalte fest?
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"]