2011-04-11 2 views
11

파이썬 (3.2)으로 작성된 더 작은 IMAP 스크립트가 있습니다.파이톤 스 imaplib로 검색하기/AFTER하기

나는 내 검색 라인은 다음과 같습니다

typ, data = M.search(None, 'FROM', '"MyName"') 

내가 예상 결과를 얻을 수 있습니다. 내가 좋아하는 뭔가를 변경하는 경우에는 : 또는 인용 날짜없이

typ, data = M.search(None, 'AFTER', '"01-Jan-2010"') 

(, 나는 그 불법 왜 아무 생각이

Traceback (most recent call last): 
    File "./priv/imap.py", line 100, in <module> 
    main() 
    File "./priv/imap.py", line 93, in main 
    print(to_json(fetch_result(M, args), args)) 
    File "./priv/imap.py", line 51, in fetch_result 
    typ, data = M.search(None, 'AFTER', '"01-Jan-2010"') 
    File "/usr/lib/python3.2/imaplib.py", line 652, in search 
    typ, dat = self._simple_command(name, *criteria) 
    File "/usr/lib/python3.2/imaplib.py", line 1121, in _simple_command 
    return self._command_complete(name, self._command(name, *args)) 
    File "/usr/lib/python3.2/imaplib.py", line 957, in _command_complete 
    raise self.error('%s command error: %s %s' % (name, typ, data)) 
imaplib.error: SEARCH command error: BAD [b'Could not parse command'] 

이 오류를 얻을 수 있지만, 모든 도움이 될 것입니다 감사합니다! 또한, 제가 ultimatly하고 싶은 것은 사용 "마이 세가 1234567"일부 미세한 필터링을 수행하기 위해,하지만 Gmail에서/파이썬은 아직이 지원하는 경우 확실하지 않다. 사전에

감사

답변

4

당신에게

typ, data = M.search(None, '(SINCE "01-Jan-2010")') 

또는 당신의 UID를 사용하는 경우 : : 시도 할 수

typ, data = M.uid('search', '(SINCE 01-Jan-2010)') 
+1

내부 날짜 (시간 및 시간대 무시)는 또한 날짜와 시간을 사용하는 것이 가능하다? –

+1

@ user250145 아니요, 해당 명령은 "시간 및 시간대 무시"로 수행됩니다. http://tools.ietf.org/html/rfc3501.html#section-6.4.4 – lajarre

12

당신은 다음과 같은 검색을 사용할 수 있습니다

을하지만 자세한 시간을 지원하지 않는 것,하지만 날짜입니다.

및 날짜가 이메일

M.search(None, '(SINCE "01-Jan-2012")') 
M.search(None, '(BEFORE "01-Jan-2012")') 
M.search(None, '(SINCE "01-Jan-2012" BEFORE "02-Jan-2012")') 
+0

괄호는 필요하지 않습니다. – arnt