I cannot search sent emails in Gmail with Python(我无法使用 Python 在 Gmail 中搜索已发送的电子邮件)
问题描述
我正在尝试在已发送消息中搜索消息(实际上我都关心),但我只收到传入消息.暂时我有
I am trying to search for messages in the Sent (actually i care for both) but I only get incoming messages. For the time being i have
imap_conn.select()
str_after = after.strftime('%d-%b-%Y')
typ, msg_ids = imap_conn.search('UTF-8','SINCE',str_after)
这给出了相同的结果
imap_conn.select('INBOX')
当我用 ALL 或 SENT 替换 INBOX 时,我得到:命令 SEARCH 在 AUTH 状态下非法,仅在 SELECTED 状态下允许
When I replace INBOX with ALL or SENT I get: command SEARCH illegal in state AUTH, only allowed in states SELECTED
推荐答案
伙计,错误信息太误导人了.真正的意思是您尝试选择无效的文件夹名称,因此搜索操作失败.
Man, the error message is so misleading. What it's really saying is that you have tried to select an invalid folder name hence the search operation fails.
要验证/检查当前有效的文件夹/标签,请执行以下操作:
To verify/check the current valid folders/labels do something like:
使用 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())
使用 imaplib
import imaplib
mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login('myusername@gmail.com', 'mypassword')
print(mail.list())
在我看到它所期望的文件夹名称后,一切都很好.
After I could see what folder names it was expecting, all was well.
这篇关于我无法使用 Python 在 Gmail 中搜索已发送的电子邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:我无法使用 Python 在 Gmail 中搜索已发送的电子邮件
基础教程推荐
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01
- 用于分类数据的跳跃记号标签 2022-01-01
- 筛选NumPy数组 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01