13.4.7 搜索消息
选择邮箱之后,可以使用search()来获取邮箱总消息的ID。
import imaplib
import imaplib_connect
from imaplib_list_parse import parse_list_response
with imap_connect.open_connection() as c:
typ,mbox_data = c.list()
for line in mbox_data:
flags,delimiter,mbox_name = parse_list_response(line)
c.select('"{}"'.format(mbox_name),readonly=True)
typ,msg_ids = c.search(None,'ALL')
print(mbox_name,typ,msg_ids)
消息ID由服务器分配,还要依赖于具体实现。IMAP4协议区分了两种ID,一种是事务期间给定时刻消息的顺序ID,另一种是消息的UID标识符,不过并不是所有服务器都同时实现了这两种ID。