首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从pymongo.objectid导入ObjectId ImportError:没有名为objectid的模块

从pymongo.objectid导入ObjectId ImportError:没有名为objectid的模块
EN

Stack Overflow用户
提问于 2015-01-31 12:57:21
回答 1查看 11.8K关注 0票数 7

我编写了一个python代码,它可以从Mongo集合中获取名为Tweets的tweets。我不想只获取对象文本并添加一个名为情感的附加对象。

当我循环遍历Tweets并将json对象解析为字符串时,我会得到以下错误:

从pymongo.objectid导入ObjectId ImportError:没有名为objectid的模块

为此,我使用以下代码

代码语言:javascript
复制
import pymongo
import nltk
import json
from json import JSONEncoder
from pymongo import MongoClient
from pymongo.objectid import ObjectId

#JSON Encoder
class MongoEncoder(JSONEncoder):
    def default(self, obj, **kwargs):
        if isinstance(obj, ObjectId):
            return str(obj)
        else:            
            return JSONEncoder.default(obj, **kwargs)

#Mongo Settings
client = MongoClient()
db = client.Sentiment
Tweets = db.Tweet
TweetTraining = db.TweetTraining

#GET TEXT_TAG FROM TWEET
for tweet in Tweets.find({"lang":"nl"},{"text"}):
  print json.dumps(tweet, cls=MongoEncoder)

我希望你能帮我一把。非常感谢

埃里克

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-01 14:19:15

文件顶部的一个导入是不正确的。ObjectId应该从bson.objectid而不是pymongo.objectid加载

代码语言:javascript
复制
from bson.objectid import ObjectId

下面是用于ObjectId查询的pymongo文档的链接

PyMongo - ObjectId查询

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28251835

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档