我正在关注此link中有关序列化程序的文档,我不确定是否缺少有关十进制序列化程序的文档?我用这样的scrapy字段定义了一个Item:
prize = scrapy.Field(serializer=Decimal, output_processor=TakeFirst())
当scrapinhub存储此值时,我收到了多个错误,尤其是包含逗号的数字。
是否有序列化小数的标准方法?
答案 0 :(得分:2)
这不是scrapinghub
或scrapy
错误,您无法将带逗号的字符串转换为数字,您首先必须删除该逗号然后转换:
def decimal_serializer(value):
return float(value.replace(',', ''))
...
prize = scrapy.Field(serializer=decimal_serializer, output_processor=TakeFirst())