在 scrapinghub 中序列化小数

Serialize decimals in scrapinghub

我正在关注此 link 中有关序列化程序的文档,我不确定是否缺少有关十进制序列化程序的文档?。我用这样一个 scrapy 字段定义了一个项目:

prize = scrapy.Field(serializer=Decimal, output_processor=TakeFirst())

当 scrapinhub 存储这个值时,我遇到了几个错误,尤其是对于包含逗号的数字。

是否有序列化小数的标准方法?

这不是 scrapinghubscrapy 错误,您不能将带逗号的字符串转换为数字,您必须先删除该逗号,然后再转换:

def decimal_serializer(value):
    return float(value.replace(',', ''))

...

    prize = scrapy.Field(serializer=decimal_serializer, output_processor=TakeFirst())