我正在尝试从我的Gmail中的某个发件人下载所有电子邮件进行分析。我在第23行遇到了错误。
这是我的代码:
import imaplib
import email
mail = imaplib.IMAP4_SSL('imap.gmail.com')
username = raw_input('USERNAME (email):')
password = raw_input('PASSWORD: ')
try:
mail.login(username, password)
print "Logged in as %r !" % username
except imaplib.IMAP4.error:
print "Log in failed."
mail.list()
# Out: list of "folders" aka labels in gmail.
mail.select("inbox") # connect to inbox.
fromWho = raw_input('FROM:')
result, data = mail.uid('search', None, '(FROM fromWho )') # search and return uids instead
latest_email_uid = data[0].split()[-1]
result, data = mail.uid('fetch', latest_email_uid, '(RFC822)')
raw_email = data[0][1]
以下是我遇到的错误:
Traceback (most recent call last):
File "test.py", line 23, in <module>
有什么想法吗?
答案 0 :(得分:0)
IMAP4.uid作为命令方法工作,只使用UID。第一部分必须是一个命令,你有搜索。因此,其他参数应该与搜索方法中的参数一样,只需记住在命令字符串中输入名称。
你应该尝试像
这样的东西IMAP4.uid('SEARCH',None,'(FROM“{}”)'。format(fromWho))