【发布时间】:2012-02-05 16:08:31
【问题描述】:
对于如何绕过 IMAP UID SEARCH 获取包含 %(百分号)符号的消息 ID 的帮助,我将不胜感激:
import imaplib
messageId = '<CA824955.19602%username@hostname.com>'
M.uid('search', None, 'HEADER', 'Message-ID', "'" + messageId + "'")
得到:
51:55.73 > EKEE4 UID SEARCH HEADER Message-ID '<CA824955.19602%username@hostname.com>'
51:55.83 < EKEE4 BAD Could not parse command
51:55.83 BAD response: Could not parse command
我试过了
CA824955.19602%username@hostname.com
'CA824955.19602%username@hostname.com'
'CA824955.19602\%username@hostname.com'
'CA824955.19602%%username@hostname.com'
带或不带引号都返回相同的“无法解析命令”。
服务器是 imap.gmail.com
谢谢,
PS:
非常感谢@glglgl,将它包装成'"' + messageId + '"' 确实有帮助。我从 mysql 字符串字段中获取 messageId,由于某种原因,没有这个包装它就无法工作......
问题已解决,非常感谢闪电般的解答!!!
【问题讨论】:
-
尝试查看高级库,我的 - github.com/ikvk/imap_tools