Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python/Dictionary/List/Mongo插入问题-初学者_Python_Pymongo - Fatal编程技术网

Python/Dictionary/List/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>

抱歉,正在尝试理解和习惯字典和列表对象

我正在通过eBay的ebaysdk调用eBay的API,并希望将其中的物品作为文档存储到Mongo中的集合中。简单

下面是将返回的模式示例:

<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)