복붙노트

[MONGODB] pyMongo과 ISODate 만들기

MONGODB

pyMongo과 ISODate 만들기

나는 pyMongo 클라이언트 파크 ISODate 객체를 생성 할 수있는 방법을 찾기 위해 노력하고 있지만, 아직까지 성공하지 않고 있었어요.

지금은 파이썬 3에서 사용할 수있는 심각한 일이다 http://pypi.python.org/pypi/pymongo3 클라이언트를 사용하지만, 문제는이 특정의 pymongo 버전에서 제공하지 않는 것 같습니다.

당신의 당신의 도움이 MongoDB의 객체 a를 pymongo 클라이언트의 종류 ... 덕분에 사용할 수있는 해결책을 발견 한 경우 내가 알고 싶습니다!

해결법

  1. ==============================

    1.당신은 datetime.datetime의 인스턴스를 저장해야합니다.

    당신은 datetime.datetime의 인스턴스를 저장해야합니다.

    파이썬 쉘에서 삽입 :

    >>> c.test.test.insert({'date': datetime.datetime.utcnow()})
    ObjectId('4e8b388367d5bd2de0000000')
    >>> c.test.test.find_one()
    {u'date': datetime.datetime(2011, 10, 4, 16, 46, 59, 786000), u'_id': ObjectId('4e8b388367d5bd2de0000000')}
    

    몽고 쉘에서 쿼리 :

    > db.test.findOne()
    {
        "_id" : ObjectId("4e8b388367d5bd2de0000000"),
        "date" : ISODate("2011-10-04T16:46:59.786Z")
    }
    
  2. ==============================

    2.사람들을 위해 누가 타임 스탬프 ISODate를 만드는 방법을 궁금해 :

    사람들을 위해 누가 타임 스탬프 ISODate를 만드는 방법을 궁금해 :

    ts = time.time()
    isodate = datetime.datetime.fromtimestamp(ts, None)
    

    이없는 시간대와 날짜 객체를 생성합니다. MongoDB를 삽입 할 때이 적절한 ISODate로 변환 얻을 것이다 ().

    또한, 나는 강력하게 파이썬 TimeTransitionsImage보고 좋습니다. 여기에 튜플 (C에서 구조체에 해당) 튜플 이름이 있습니다. 또한 이름이 동일한 경우에도 그 튜플 필드 C 대응에서와 다른 것입니다 (예를 들어, 월요일이 아닌 일요일 인 tm_wday 시작).

  3. ==============================

    3.사실 그 중 하나가 작동하지 않습니다. 당신은 float를 필요로한다는 밖으로 중 하나 utcfromtimestamp 또는 fromtimestamp, 프로그램 오류를 사용하려고하면. 그냥 날짜 시간 객체로 문자열을 구문 분석하고 MongoDB를 직접 그것을 사용합니다. 필터

    사실 그 중 하나가 작동하지 않습니다. 당신은 float를 필요로한다는 밖으로 중 하나 utcfromtimestamp 또는 fromtimestamp, 프로그램 오류를 사용하려고하면. 그냥 날짜 시간 객체로 문자열을 구문 분석하고 MongoDB를 직접 그것을 사용합니다. 필터

    from_dt = datetime.strptime('2018-04-01','%Y-%m-%d')
    #from_dts = datetime.utcfromtimestamp(from_dt)
    to_dt = datetime.strptime('2018-04-30','%Y-%m-%d')
    #to_dts = datetime.utcfromtimestamp(to_dt)
    filterCondition = { 
        "LastLogin" : { "$lte" : to_dt},
        "LastLogin" : { "$gte" : from_dt}
    }
    

    그리고

    db[(colName)].find({ "<colName>" : filterCondition }) 
    

    작동 할 것이다...

  4. ==============================

    4.

    result = db.objects.insert_one(
       {"last_modified": datetime.datetime.utcnow()})
    

    여기 UTC는 세계시 좌표를 의미합니다.

  5. from https://stackoverflow.com/questions/7651064/create-an-isodate-with-pymongo by cc-by-sa and MIT license