pymongo根据日期索引获取的数据为空,这个问题今天下午困扰了我快一个多钟头,最后的结果,毫无疑问又是一个比较低级的错误
数据库里的数据都在啊,时间段也没问题,为啥就是没数据呢,很有可能你就是犯了我犯得错误,传入的日期只是一个string,并没有使用
datetime.strptime(startDate, '%Y%m%d')进行修改,改过之后,就能够拿到数据了。~~~如下所示
def trainSklearnModel(model,func,dbName,symbol,startDate, endDate):"""载入历史数据"""startDate = datetime.strptime(startDate, '%Y%m%d')endDate = datetime.strptime(endDate, '%Y%m%d')dbClient = pymongo.MongoClient(globalSetting['mongoHost'], globalSetting['mongoPort'])collection = dbClient[dbName][symbol]flt = {'datetime': {'$gte': startDate,'$lt': endDate}}trainCursor = collection.find(flt).sort('datetime')trainData=[]for d in trainCursor:data = VtBarData()data.__init__ = dtrainData.append(data)count = len(trainCursor)
如下所示: