笨鸟编程-零基础入门Pyhton教程

 找回密码
 立即注册

项目

发布者: 笨鸟自学网



其他常见任务

从项目创建dict:

>>> dict(product) # create a dict from all populated values
{'price': 1000, 'name': 'Desktop PC'}

从dicts创建项目:

>>> Product({'name': 'Laptop PC', 'price': 1500})
Product(price=1500, name='Laptop PC')
>>> Product({'name': 'Laptop PC', 'lala': 1500}) # warning: unknown field in dict
Traceback (most recent call last):
    ...
KeyError: 'Product does not support field: lala'

扩展项子类

您可以通过声明原始项的子类来扩展项(添加更多字段或更改某些字段的元数据)。

例如::

class DiscountedProduct(Product):
    discount_percent = scrapy.Field(serializer=str)
    discount_expiration_date = scrapy.Field()

您还可以通过使用前面的字段元数据并附加更多值或更改现有值来扩展字段元数据,如:

class SpecificProduct(Product):
    name = scrapy.Field(Product.fields['name'], serializer=my_serializer)

添加(或替换)了 serializer 的元数据键 name 字段,保留所有以前存在的元数据值。

支持所有项目类型

在接收项的代码中,例如 item pipelines 或 spider middlewares ,使用 ItemAdapter 类与 is_item() 函数来编写适用于任何 supported item type 

12345
上一篇:选择器下一篇:项目加载器

Archiver|手机版|笨鸟自学网 ( 粤ICP备20019910号 )

GMT+8, 2024-9-8 11:12 , Processed in 0.020159 second(s), 17 queries .

© 2001-2020

返回顶部