2017-09-27 10 views
2

보다 큽니다. 파이썬 imaplib을 사용하여 imap 메시지를 데이터베이스와 동기화합니다. 데이터베이스에서 가장 최근 메시지 uid가 170이라고 가정 해 봅시다. 170보다 큰 최신 메시지 목록을 얻으려고합니다.Python imaplib - uid가

imap_server = 'my.imap.server' 
mail = imaplib.IMAP4_SSL(imap_server) 
mail.login(imap_user, imap_password) 

start_message_uid = 169 
if start_message_uid: 
    command = "UID {}:*".format(start_message_uid) 
    result, data = mail.uid('search', None, command) 
else: 
    result, data = mail.uid('search', None, "ALL") # this returns list of all messages 

하지만,이 명령을

result, data = mail.uid('search', None, command) 

반환 [ ". IMAP 명령 오류는 서버가 수신 한"]

당신이 지점 수 있습니다 내가 잘못하고 있어요?

+0

전체 추적을 공유 할 수 있습니까 –

+0

및 디버그 로깅을 설정하십시오. – Max

+0

아마도'fetch'와 같은 다른 명령을 시도해야 할 수도 있습니다. 받은 오류 메시지를 붙여 넣을 수 있습니까? –

답변

1

여러분의 관심에 감사드립니다. 나는 그것을 사용하여 해결했습니다 :

result, data = mail.uid('search', None, "UID", start_message_uid + ':*')