相关疑难解决方法(0)

我无法使用Python在Gmail中搜索已发送的电子邮件

我正在尝试搜索已发送的消息(实际上我关心两者),但我只收到传入的消息.暂时我有

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状态下

python gmail imaplib

10
推荐指数
2
解决办法
9443
查看次数

imaplib - Gmail中存档/所有邮件的正确文件夹名称是什么?

我有一个脚本可以将Gmail中的所有电子邮件导出为文本文件.

它适用于您选择文件夹的这一行:

mail.select("inbox")
Run Code Online (Sandbox Code Playgroud)

但我不确定Gmail存档的名称是什么,其中存储了所有电子邮件.我已经尝试过存档和所有邮件和东西,但没有运气.

有谁知道正确的名字?

python email gmail imaplib

4
推荐指数
1
解决办法
2487
查看次数

大收件箱中的imaplib.select:命令的参数太多了

我试图通过python脚本访问Gmail中的电子邮件.我使用的代码如下:

import imaplib
m = imaplib.IMAP4_SSL("imap.gmail.com")
m.login("username","password")
m.select("[Gmail]/All Mail")
Run Code Online (Sandbox Code Playgroud)

在python 2中运行此代码时,它工作正常,我得到所有电子邮件的列表.在python 3 hoverer中它失败并出现错误

>>> m.select("[Gmail]/All Mail")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.2/imaplib.py", line 674, in select
    typ, dat = self._simple_command(name, mailbox)
  File "/usr/lib/python3.2/imaplib.py", line 1121, in _simple_command
    return self._command_complete(name, self._command(name, *args))
  File "/usr/lib/python3.2/imaplib.py", line 957, in _command_complete
    raise self.error('%s command error: %s %s' % (name, typ, data))
imaplib.error: SELECT command error: BAD [b'[CLIENTBUG] Too many arguments for command']
Run Code Online (Sandbox Code Playgroud)

我做了一些测试.它适用于其他文件夹,如"收件箱",我只收到400封电子邮件(在"所有邮件"中为6000).

这是与列表大小相关的问题吗?为什么它在python 2和3中有所不同?

谢谢

python imap gmail-imap python-3.x

3
推荐指数
1
解决办法
2169
查看次数

标签 统计

python ×3

gmail ×2

imaplib ×2

email ×1

gmail-imap ×1

imap ×1

python-3.x ×1