(6)Scrapy项目(Items)


Scrapy进程可通过使用蜘蛛提取来自网页中的数据。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 提供了一个构造函数的副本,并由在 fields 中的项目提供额外的属性。 

字段对象

字段对象可以通过使用下面类中的Field类,不发出附加处理或属性来指定:
class scrapy.item.Field([arg])

 关注右侧公众号,随时随地查看教程
 Scrapy教程目录 

You may also like...