我已经构建了一个Twitter抓取器,可以将推文存储到MongoDB中。现在我正在尝试使用PyMongo查询数据。
我的MongoDB中存储的数据:
{
"_id": {
"$oid": "5555dc0e50f808afe0da52fe"
},
"text": "Lorem Ipsum...",
"created_at": {
"$date": "2015-05-15T10:55:16.000Z"
},
}
以下作品完美无缺(但每次推文都会发推文):
dikt1 = {}
tweets_iterator = coll.find({},{ "text": 1, "user.screen_name":1 ,created_at': 1} )
for tweet in tweets_iterator:
dikt1[tweet['text']] = tweet['created_at']
但是,在尝试查询某些日期之后的所有日期时:
date1 = datetime.utcnow()-timedelta(days=30)
dikt1 = {}
tweets_iterator = coll.find({},{ "text": 1, "user.screen_name":1 , 'created_at': {'$gt': date1}} )
for tweet in tweets_iterator:
dikt1[tweet['text']] = tweet['created_at']
最后一行“tweets in tweets_iterator:”会出错:
OperationFailure:数据库错误:无法规范查询:BadValue不支持的投影选项:created_at:{$ gt:new Date(1434480147418)}
有任何建议吗?
谢谢!
答案 0 :(得分:2)
如果要应用过滤器,请使用 namespace :api,:defaults => {format:'json'} do
resources :deals
end
的第一个位置参数:
find()