2014-10-16 19 views
1

我有一个oplog的时间戳为'ts': Timestamp(1413438497, 1) 锄头我可以把它转换成ISODATE。 它是由壳牌蒙戈Oplog Timstamp到PyMongo的ISODATE转换

x = Timestamp(1413438497, 1) 
isodate = new Date(x.t*1000) 

工作,但它不与Pymongo工作。它显示一个错误'Timestamp' object has no attribute 't'。 这里是我的代码

import pymongo 
import datetime 
from pymongo import Connection 
con = Connection() 
db=con['local'] 
oplog= db['oplog.rs'] 
for doc in oplog.find({'ns':'hospital.patients'}) : 
    x = new Date(doc['ts'].t*1000) 
    print x 
+0

向我们展示您的python代码。 – avi 2014-10-17 04:48:58

+0

@avi:我已经包括我的代码也... – 2014-10-20 08:25:42

回答

1

你可以使用pymongo.timestamp.Timestamp.as_datetime()(文档link

... 
... 
print doc['ts'].as_datetime() #this is a python datetime object 
... 
... 

可以转换为ISO格式轻松(文档link)在python DateTime对象时间戳:

datetime_object.isoformat() 
+0

谢谢..它的工作.. – 2014-10-20 12:02:25

+0

很高兴它为你工作! – avi 2014-10-20 12:09:14