我编写了一个python代码,它可以从Mongo集合中获取名为Tweets的tweets。我不想只获取对象文本并添加一个名为情感的附加对象。
当我循环遍历Tweets并将json对象解析为字符串时,我会得到以下错误:
从pymongo.objectid导入ObjectId ImportError:没有名为objectid的模块
为此,我使用以下代码
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)我希望你能帮我一把。非常感谢
埃里克
发布于 2015-02-01 14:19:15
文件顶部的一个导入是不正确的。ObjectId应该从bson.objectid而不是pymongo.objectid加载
from bson.objectid import ObjectId下面是用于ObjectId查询的pymongo文档的链接
PyMongo - ObjectId查询
https://stackoverflow.com/questions/28251835
复制相似问题