1
def connect_imap():
m = imaplib.IMAP4_SSL("imap.gmail.com", 993)
print("{0} Connecting to mailbox via IMAP...".format(datetime.datetime.today().strftime("%Y-%m-%d %H:%M:%S")))
details = login_credentials()
m.login(details[0], details[1])
return m
m = connect_imap()
typ, data = m.search(None, 'ALL')
m.close()
m.logout()
上記のコードの出力は次のとおりです。imaplib.error:状態AUTHでの違法なコマンド検索は、状態のみに許さSELECTED
2016-08-24 10:55:34 Connecting to mailbox via IMAP...
Traceback (most recent call last):
File "/home/zoikmail/Desktop/test.py", line 25, in <module>
typ, data = m.search(None, 'ALL')
File "/usr/lib/python2.7/imaplib.py", line 640, in search
typ, dat = self._simple_command(name, *criteria)
File "/usr/lib/python2.7/imaplib.py", line 1088, in _simple_command
return self._command_complete(name, self._command(name, *args))
File "/usr/lib/python2.7/imaplib.py", line 838, in _command
', '.join(Commands[name])))
imaplib.error: command SEARCH illegal in state AUTH, only allowed in states SELECTED
[Finished in 1.2s with exit code 1]
[shell_cmd: python -u "/home/zoikmail/Desktop/test.py"]
[dir: /home/zoikmail/Desktop]
[path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games]
は、上記のコードで何が悪いのでしょうか?
答えが得られたときは、まず 'imap4.select()'を実行しなければなりません。 'imap4.search()' – user5319825