gpt4 book ai didi

python-2.7 - python imaplib-错误 'unexpected repsonse'

转载 作者:行者123 更新时间:2023-12-04 04:54:46 25 4
gpt4 key购买 nike

您好,我突然在一些以前运行良好的代码上使用 imaplib 时遇到错误。

import imaplib
m = imaplib.IMAP4('myserver','port')
m.login(r'username','password')
m.select()

给我错误

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/imaplib.py", line 649, in select
typ, dat = self._simple_command(name, mailbox)
File "/usr/lib/python2.7/imaplib.py", line 1070, in _simple_command
return self._command_complete(name, self._command(name, *args))
File "/usr/lib/python2.7/imaplib.py", line 899, in _command_complete
raise self.abort('command: %s => %s' % (name, val))
imaplib.abort: command: SELECT => unexpected response: '* 1520 EXISTS'

不知道是什么意思。电子邮件在其他方面都很好,我正在使用 davmail 作为服务器。

整个程序将具有特定名称的附件保存在特定文件夹中。

我已经完成了它,它肯定是 m.select() 失败的地方。

这个程序直到最近都运行良好。

我做错了什么,我该如何解决?

事件日志如下

>>> import imaplib
>>> m = imaplib.IMAP4('server','port')
>>> Debug=4
>>> m.debug
0
>>> m.debug=4
>>> m.debug
4
>>> m.login(r'username','password')
01:26.55 > HLFI1 LOGIN "username" "password"
01:30.76 < HLFI1 OK Authenticated
('OK', ['Authenticated'])
>>> m.list()
01:56.33 > HLFI2 LIST "" *
02:00.04 < * LIST (\HasNoChildren) "/" "Trash/Sent Messages"
02:00.04 < * LIST (\HasNoChildren) "/" "Sync Issues/Server Failures"
02:00.04 < * LIST (\HasNoChildren) "/" "Sync Issues/Local Failures"
02:00.04 < * LIST (\HasNoChildren) "/" "Sync Issues/Conflicts"
02:00.04 < * LIST (\HasChildren) "/" "Sync Issues"
02:00.04 < * LIST (\HasNoChildren) "/" "Junk E-mail"
02:00.04 < * LIST (\HasNoChildren) "/" "Drafts"
02:00.04 < * LIST (\HasChildren) "/" "Trash"
02:00.04 < * LIST (\HasNoChildren) "/" "Sent"
02:00.04 < * LIST (\HasNoChildren) "/" "Outbox"
02:00.04 < * LIST (\HasNoChildren) "/" "INBOX"
02:00.04 < HLFI2 OK LIST completed
('OK', ['(\\HasNoChildren) "/" "Trash/Sent Messages"', '(\\HasNoChildren) "/" "Sync Issues/Server Failures"', '(\\HasNoChildren) "/" "Sync Issues/Local Failures"', '(\\HasNoChildren) "/" "Sync Issues/Conflicts"', '(\\HasChildren) "/" "Sync Issues"', '(\\HasNoChildren) "/" "Junk E-mail"', '(\\HasNoChildren) "/" "Drafts"', '(\\HasChildren) "/" "Trash"', '(\\HasNoChildren) "/" "Sent"', '(\\HasNoChildren) "/" "Outbox"', '(\\HasNoChildren) "/" "INBOX"'])
>>> m.select()
02:21.37 > HLFI3 SELECT INBOX
02:30.87 < * 1548 EXISTS
02:30.87 last 4 IMAP4 interactions:
00:16.73 < * OK [CAPABILITY IMAP4REV1 AUTH=LOGIN MOVE] IMAP4rev1 DavMail 4.3.0-2125 server ready
00:16.73 > HLFI0 CAPABILITY
00:16.74 < * CAPABILITY IMAP4REV1 AUTH=LOGIN MOVE
00:16.77 < HLFI0 OK CAPABILITY completed
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/imaplib.py", line 649, in select
typ, dat = self._simple_command(name, mailbox)
File "/usr/lib/python2.7/imaplib.py", line 1070, in _simple_command
return self._command_complete(name, self._command(name, *args))
File "/usr/lib/python2.7/imaplib.py", line 899, in _command_complete
raise self.abort('command: %s => %s' % (name, val))
imaplib.abort: command: SELECT => unexpected response: '* 1548 EXISTS'

**更新**

我现在已经在 python-dev 下提交了一个错误

Bug report on Python

David Murray 说响应不符合 RFC 的地方

然后在 davmail sourceforge 下

davmail bug report

M 猜测者说 IMAP 保持事件状态是必要的。

我会及时更新最新动态..

最佳答案

RECENT 响应中的空格填充消息计数似乎是触发此事件的原因。我不清楚它是否应该归类为 Python 的 imaplib 或您正在使用的 IMAP 服务器中的错误。我会争辩说 imaplib 应该对此很健壮,不管规范怎么说。也许您应该提交错误报告?

(如果你这样做,请注意添加有关哪个服务器正在产生此响应的详细信息。如果它是具有可观市场份额的商业产品,那么修复它很重要,当然,如果它是你自己的简单 Python服务器,他们可能不在乎。)

关于python-2.7 - python imaplib-错误 'unexpected repsonse',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16911238/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com