Scrapy Item类描述
Scrapy过程可用于从来源中提取数据,如使用Spider的网页。Scrapy使用Item类来产生输出,其对象被用来收集被爬取的数据。
定义Items
你可以使用类定义语法来声明这些Item,同时使用如下所示的字段对象
import scrapy
class MyProducts(scrapy.Item):
productName = Field()
productLink = Field()
imageURL = Field()
price = Field()
size = Field()
Items字段
Items字段是用来显示每个字段的元数据的。由于对字段对象的值没有限制,可访问的元数据键不包含任何元数据的参考列表。字段对象用于指定所有的字段元数据,你可以根据你在Item中的要求指定任何其他字段键。可以使用Item.fields属性来访问字段对象。
使用Items
当你在使用Item时,有一些常见的功能可以被定义。欲了解更多信息,请点击此链接。
扩展Items
这些Item可以通过说明原始Item的子类来扩展。例如 –
class MyProductDetails(Product):
original_rate = scrapy.Field(serializer = str)
discount_rate = scrapy.Field()
你可以使用现有的字段元数据,通过添加更多的值或改变现有的值来扩展字段元数据,如以下代码所示:
class MyProductPackage(Product):
name = scrapy.Field(Product.fields['name'], serializer = serializer_demo)
Item对象
Item对象可以使用下面的类来指定,该类提供了来自给定参数的新的初始化Item:
class scrapy.item.Item([arg])
Item提供了一个构造函数的副本,并提供了一个额外的属性,这个属性是由字段中的Item给出的。
Field对象
class scrapy.item.Field([arg])