了解Scrapy和XPath并遇到一些问题。最近,scrapy crawl GCSpider -o items.csv -t csv返回一个CSV文件,其中包含我想要的(大部分)数据,但scrapy选择器代码包含数据(参见screenshot)。
另一个令人困惑的问题是,列标题的排序方式与为抓取和排序设置的顺序不同。在项目中。这是为什么?
蜘蛛代码如下:
"use strict"
class MyClass {
constructor(foo) {
this.foo = foo
}
func(){/*ETC */}
}
答案 0 :(得分:0)
1.在()
个extract
个关键字之后排除45deg
个关键字。因此它会为您提供功能对象,而不是它的选择器值。
2.您定义的键的顺序不会影响输出顺序。因为它就像普通的字典。我现在没有解决方案。
答案 1 :(得分:0)
正如@amow所说,你的一些提取应该改为extract()来解决输出问题中的选择器。
可以使用项目导出器设置CSV文件中字段的顺序。以下是documentation,例如,请参阅this answer。