Pan*_*Jee 10 python gmail imaplib
我正在尝试搜索已发送的消息(实际上我关心两者),但我只收到传入的消息.暂时我有
imap_conn.select()
str_after = after.strftime('%d-%b-%Y')
typ, msg_ids = imap_conn.search('UTF-8','SINCE',str_after)
Run Code Online (Sandbox Code Playgroud)
这给出了相同的结果
imap_conn.select('INBOX')
Run Code Online (Sandbox Code Playgroud)
当我用ALL或SENT替换INBOX时,我得到:命令SEARCH在状态AUTH中是非法的,只允许在SELECTED状态下
w--*_*w-- 23
伙计,错误信息是如此误导.它真正说的是你试图选择一个无效的文件夹名称,因此搜索操作失败.
要验证/检查当前有效的文件夹/标签,请执行以下操作:
使用ImapClient
from imapclient import IMAPClient
## Connect, login and select the INBOX
imap_conn = IMAPClient('imap.gmail.com', use_uid=True, ssl=ssl)
imap_conn.login(USERNAME, PASSWORD)
print(imap_conn.list_folders())
Run Code Online (Sandbox Code Playgroud)
使用imaplib
import imaplib
mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login('myusername@gmail.com', 'mypassword')
print(mail.list())
Run Code Online (Sandbox Code Playgroud)
在我看到它所期待的文件夹名称之后,一切都很顺利.
确保在字符串中使用额外的引号:
imap_conn.select('"[Gmail]/Sent Mail"')
Run Code Online (Sandbox Code Playgroud)
这对我有用。
| 归档时间: |
|
| 查看次数: |
9443 次 |
| 最近记录: |