Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用python脚本从我的gmail中删除最大的电子邮件?_Python_Gmail_Imap - Fatal编程技术网

如何使用python脚本从我的gmail中删除最大的电子邮件?

如何使用python脚本从我的gmail中删除最大的电子邮件?,python,gmail,imap,Python,Gmail,Imap,我的gmail快满了。。。我需要一个方法,找出最大的电子邮件从收件箱和删除它。然而,在gmail的web界面中,我能做的就是先找出带有附件的电子邮件,然后逐个检查附件的大小 效率太低了 我还发现了一个python脚本,可以通过imap协议登录我的gmail帐户并检索电子邮件,但我没有找到检查附件大小的方法 有人能帮我吗?提前感谢。Imap库有搜索方法。几乎有现成的代码可供您使用 #!/usr/bin/env python import imaplib from re import findall

我的gmail快满了。。。我需要一个方法,找出最大的电子邮件从收件箱和删除它。然而,在gmail的web界面中,我能做的就是先找出带有附件的电子邮件,然后逐个检查附件的大小

效率太低了

我还发现了一个python脚本,可以通过imap协议登录我的gmail帐户并检索电子邮件,但我没有找到检查附件大小的方法


有人能帮我吗?提前感谢。

Imap库有搜索方法。几乎有现成的代码可供您使用

#!/usr/bin/env python
import imaplib
from re import findall

MAXSIZE = 1000
MINSIZE = 1

m = imaplib.IMAP4_SSL('imap.gmail.com')
m.login('example@gmail.com','testPassword')
m.select()
typ, data = m.search(None, 'ALL')
typ, data = m.search(None,'(SMALLER %d) (LARGER %d)' % (MAXSIZE * 1000,MINSIZE * 1000))
for num in data[0].split():
    typ, data = m.fetch(num, '(RFC822)')
    print 'Message %s\n%s\n' % (num, len(data[0][1]))
m.close()
m.logout()

您可以在thunderbird中设置gmail并按大小排序。我正在使用imap_服务器。搜索(无),(较小的%d)(较大的%d)'(10*1024*1000,5*1024*1000)),但出现错误:imaplib.error:search命令错误:错误[“无法解析命令”]与python 2.7.2的结果相同。典型,response=imap_server.search(无),(较小的%d)(较大的%d)'(10*102 4*1000,5*1024*1000)文件“c:\python27\lib\imaplib.py”,第627行,在搜索典型中,dat=self。_简单_命令(名称,*条件)文件“c:\python27\lib\imaplib.py”,第1070行,在简单_命令中返回self。_命令完成(名称,self。_命令(名称,*args))文件“c:\python27\lib\imaplib.py”,第905行,在_command_complete raise self.error(“%s command error:%s%s%”(名称、类型、数据))imaplib.error:SEARCH command error:BAD['cannot parse command']为什么需要将其与1000相乘?我从用户处获取的值(KB或MB)。那么,我还需要乘以它吗?