这似乎为42,200〜记录运行,那么失败:AppEngine上的Python批量出口错误
import datetime
import time
from google.appengine.ext import db
from google.appengine.tools import bulkloader
from google.appengine.api import datastore_types
class SearchRec(db.Model):
WebSite = db.StringProperty()
WebPage = db.StringProperty()
DateStamp = db.DateTimeProperty(auto_now_add=True)
IP = db.StringProperty()
UserAgent = db.StringProperty()
class TrackerExporter(bulkloader.Exporter):
def __init__(self):
bulkloader.Exporter.__init__(self, 'SearchRec',
[('WebSite', str, None),
('WebPage', str, None),
('DateStamp', lambda x: str(datetime.datetime.strptime(x, '%d/%m/%Y').date()), None),
('IP', str, None)
])
exporters = [TrackerExporter]
if __name__ == '__main__':
bulkload.main(TrackerExporter)
错误:
File "tracker-export.py", line 89, in <lambda>
('DateStamp', lambda x: str(datetime.datetime.strptime(x, '%d/%m/%Y').date()
), None),
TypeError: strptime() argument 1 must be string, not datetime.datetime
您是否在过去某个时间点的db.StringProperty和db.DatetimeProperty之间的某个点更改了模型的定义? – geoffspear 2010-05-12 18:06:50
我做到了,但是我把所有的数据都抛弃了(直到模型消失),所以不应该影响它。 – 2010-05-12 19:32:05