此刮板是完整的,应该处于工作状态,但是,这些项目似乎未定义,并且在尝试爬网时会产生键错误。它是一个非常简单的蜘蛛,只有2个物品。
我反复研究了这种结构的方式,但是似乎找不到任何错误的代码。物品似乎已明确定义,并且刮板运行但产生错误。
这里的任何帮助或建议将不胜感激!
答案 0 :(得分:1)
您正在创建一个空的BestbuyscraperItem类。如果您看到scrapy repo处的代码,除非您传递参数,否则item类将创建一个空字典。设置值时,setitem将引发键错误。
您应该执行类似的操作
title = extract title
price = extract price
item = BestbuyscraperItem(title=title , price=price )
请参见example
答案 1 :(得分:0)
检查是否设置了该字段,只需检查item实例中的field键即可。您可能应该检查xpath
答案 2 :(得分:0)
我使用Scrapy已有4年以上了,从未使用Items
类
您的情况就是这样
item = {}
item['title'] = SOMETHING_HERE
item['price'] = SOMETHING_HERE
yield item