Pymongo 无法为设置参数编码对象
Pymongo cannot encode object for a set argument
我正在抓取网站并使用 pymongo 保存到 mongodb。
抓取器所做的是将每个产品添加到一个数组中,当没有更多产品时,它将该数组保存到 mongodb。
一个产品看起来像这样:
product = {
'title': title,
'url': url,
'thumbnail': image,
'reviews': {total_reviews, rating}
}
pymongo 看起来像这样:
collection.update_one(
{'_id': 1}, {'$set': {'api.results': productList}})
我得到的错误是:bson.errors.InvalidDocument: cannot encode object: {'4.5', 'N/A'}
。我一直在寻找解决方案,但我找到的解决方案仅显示如何查找未更新的项目。我将如何解决这个问题?
{foo, bar}
是 foo
和 bar
的集合。
集不能直接存储在 MongoDB 中,您需要将它们转换为 MongoDB 可以理解的类型,例如列表。
如果您想要列表,请使用 []
括号。
如果需要映射,请指定键 ({foo: foo, bar: bar}
)。
我正在抓取网站并使用 pymongo 保存到 mongodb。
抓取器所做的是将每个产品添加到一个数组中,当没有更多产品时,它将该数组保存到 mongodb。
一个产品看起来像这样:
product = {
'title': title,
'url': url,
'thumbnail': image,
'reviews': {total_reviews, rating}
}
pymongo 看起来像这样:
collection.update_one(
{'_id': 1}, {'$set': {'api.results': productList}})
我得到的错误是:bson.errors.InvalidDocument: cannot encode object: {'4.5', 'N/A'}
。我一直在寻找解决方案,但我找到的解决方案仅显示如何查找未更新的项目。我将如何解决这个问题?
{foo, bar}
是 foo
和 bar
的集合。
集不能直接存储在 MongoDB 中,您需要将它们转换为 MongoDB 可以理解的类型,例如列表。
如果您想要列表,请使用 []
括号。
如果需要映射,请指定键 ({foo: foo, bar: bar}
)。