Python/Dictionary/List/Mongo插入问题-初学者
抱歉,正在尝试理解和习惯字典和列表对象 我正在通过eBay的ebaysdk调用eBay的API,并希望将其中的物品作为文档存储到Mongo中的集合中。简单 下面是将返回的模式示例:Python/Dictionary/List/Mongo插入问题-初学者,python,pymongo,Python,Pymongo,抱歉,正在尝试理解和习惯字典和列表对象 我正在通过eBay的ebaysdk调用eBay的API,并希望将其中的物品作为文档存储到Mongo中的集合中。简单 下面是将返回的模式示例: <timestamp>2009-09-04T00:47:12.456Z</timestamp> <searchResult count="2"> <item> <itemId>230371938681</itemId>
<timestamp>2009-09-04T00:47:12.456Z</timestamp>
<searchResult count="2">
<item>
<itemId>230371938681</itemId>
<title>Harry Potter and the Order of the Phoenix HD-DVD</title>
<globalId>EBAY-US</globalId>
<primaryCategory>
<categoryId>617</categoryId>
<categoryName>DVD, HD DVD & Blu-ray</categoryName>
</primaryCategory>
将获得以下错误:
Traceback (most recent call last):
File "ebay_search.py", line 34, in <module>
ebay_collection.insert(key)
File "/Library/Python/2.7/site-packages/pymongo/collection.py", line 408, in insert
self.uuid_subtype, client)
File "/Library/Python/2.7/site-packages/pymongo/collection.py", line 378, in gen
doc['_id'] = ObjectId()
TypeError: 'str' object does not support item assignment
回溯(最近一次呼叫最后一次):
文件“ebay_search.py”,第34行,在
易趣收藏。插入(键)
文件“/Library/Python/2.7/site packages/pymongo/collection.py”,插入部分第408行
self.uuid_子类型,客户端)
文件“/Library/Python/2.7/site packages/pymongo/collection.py”,第378行,gen
doc[''u id']=ObjectId()
TypeError:“str”对象不支持项分配
简单的东西。我只想将每个项目添加为文档。像字符串这样的不可变类型不能用作文档,因为它不允许添加其他字段,如。您可以将字符串包装到字典中,作为包装文档:
key_doc = {'key': key}
ebay_collection.insert(key_doc)
K、 现在我明白为什么我至少感到困惑了。在我看来,Dict一点也不像JSON。以下是您的建议的结果:{'myitem':{'itemId':{'value':'191176672795'},'IsMultiVariationList':{'value':'false'},'TopRatedList':{'value':'false'},'endTime':{'value':'2014-05-19T19:34:19.000Z'}}此格式甚至与JSON不太接近。。。现在真的输了。
key_doc = {'key': key}
ebay_collection.insert(key_doc)