📅  最后修改于: 2020-10-31 14:32:32             🧑  作者: Mango
爬虫程序可用于使用爬虫从诸如网页之类的源中提取数据。 Scrapy使用Item类来生成输出,其对象用于收集被抓取的数据。
您可以使用类定义语法以及如下所示的字段对象来声明项目:
import scrapy
class MyProducts(scrapy.Item):
productName = Field()
productLink = Field()
imageURL = Field()
price = Field()
size = Field()
项目字段用于显示每个字段的元数据。由于字段对象上的值没有限制,因此可访问的元数据键不会保留任何元数据引用列表。字段对象用于指定所有字段元数据,并且您可以根据项目中的要求指定任何其他字段键。可以使用Item.fields属性访问字段对象。
使用这些项时,可以定义一些常用功能。有关更多信息,请单击此链接。
可以通过说明原始项目的子类来扩展这些项目。例如-
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对象,该类从给定参数提供新的初始化项-
class scrapy.item.Item([arg])
该Item提供了构造函数的副本,并提供了由字段中的Item赋予的额外属性。
可以使用以下类指定字段对象,在该类中,Field类不会发出其他过程或属性-
class scrapy.item.Field([arg])