![](/img/trans.png)
[英]How do you accsess to a gmail inbox and manage emails using python?
[英]How do you iterate through each email in your inbox using python?
我是編程新手,我正在嘗試構建一個autorespoder來將msg發送到特定的電子郵件地址。
使用if語句,我可以檢查收件箱中是否有來自某個地址的電子郵件,我可以發送電子郵件,但是如果該地址有多封電子郵件,我該如何制作for循環來為每個地址發送電子郵件來自該特定地址的電子郵件
我試着把它用作循環:
for M.search(None, 'From', address) in M.select():
但我得到錯誤:“無法分配給該函數調用”
正如您聲稱自己是編程新手,我最好的建議是:始終閱讀文檔。
也許你應該先閱讀一個教程 。
文檔提供了一個示例:
import getpass, imaplib
M = imaplib.IMAP4()
M.login(getpass.getuser(), getpass.getpass())
M.select()
typ, data = M.search(None, 'ALL')
for num in data[0].split():
typ, data = M.fetch(num, '(RFC822)')
print 'Message %s\n%s\n' % (num, data[0][3])
M.close()
M.logout()
你有沒有嘗試過?
關於你的代碼:
定義for
循環時 ,它應該是:
for x in some_data_set:
x
是一個變量,它一次保存一個項的值(並且只能在for循環體中訪問(有一個例外,但這在這里並不重要))。
你在做什么與imaplib模塊無關,只是錯誤的語法。
順便說一句。 .select()
選擇郵箱,僅返回郵箱中的郵件數 。 即只是一個標量值,沒有可以迭代的序列:
IMAP4.select([mailbox [,readonly]])
選擇一個郵箱。 返回的數據是郵箱中的郵件計數(EXISTS響應)。 默認郵箱是“INBOX”。 如果設置了只讀標志,則不允許對郵箱進行修改。
(這確實與imaplib模塊有關;))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.