悪い日付を文字列として返すAPIが出回っています。たとえば、アプリケーションで動作しない '1856-00-00 00:00:00'を返すレコードを見つけることがあります。文字列をdatetimeオブジェクトに簡単に変換できますが、同じオブジェクトを評価して日と月が両方とも00であるかどうかをどのように判断できますか?ここまで私がこれまで持っていたことがあります。
try:
date_taken = None
if x.has_key('datetaken'):
date_taken = x['datetaken']
gooddate = dateutil.parser.parse(date_taken)
if gooddate < datetime.datetime(1960, 01, 01, 00, 00, 00):
fixdate = str(gooddate)
except Exception as err:
logger.error('datetaken: %s', err)
私は、1月1日に悪いDateTimeオブジェクトを変換するために、1960年
を希望アダム
+1最初のものであるが、あなたは、OPの指定された最小値より少ない日付を考慮しなかった。 (実際に私は間違っています、それは最低限の規定ではありませんでした。悪いオブジェクトの場合はデフォルトでしたので、私は間違っていました) –
それはそれでした!ありがとう! – aeupinhere