2006年07月04日 星期二 09:56
大家好! 我现需要解决这样一个问题:自动收取POP3邮件,将From、To、主题、信件内容保存到数据库中,将附件保存到文件中,请问如何实现最方便? 我的初步思路是,尽量使用现有的软件,如在Linux下,收meil有fetchmail,收到的mail存放在mbox邮箱中,如何解析每一封邮件就是我要实现的最关键问题了。在windows下,我发现Thundbird邮件客户端的邮箱也是mbox格式的,所以可以用Thundbird自动收邮件,但如何自动解析邮件也是关键所在。 现在的邮件客户端都需要手工来查看邮件内容、另存附件等操作,不能满足我的自动解析邮件内容的需求。 我查看了Python的mailbox、email等模块,发现是可以解析mbox邮箱的,但没有搞明白到底如何实现。请教python-chinese的朋友们,是否能够帮助我解决一下这个问题呢? 非常感谢! -- ---------------------------------------- Lei zhenlin -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060704/a6cd47cb/attachment.htm
2006年07月04日 星期二 10:45
An HTML attachment was scrubbed... URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060704/c6252d9e/attachment.htm
2006年07月04日 星期二 10:47
正责.给你参考.我在写一个基于数据库的新闻组..你有兴趣吗? 你的需求我很早以前做过..因为硬盘坏了,例子没了..你可以去网上找找我的贴子. def parseArticle(self,data): """ From: "NEO" <openunix at 163.com> Newsgroups: cn.test Subject: test Date: Fri, 30 Jun 2006 17:14:17 +0800 Lines: 3 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 X-RFC2646: Format=Flowed; Original """ #[a-zA-z0-9]+@[a-zA-z0-9]+.[a-zA-z]+ matchs = ( ('From', r'From: (".+" <.+>)\r\n'), ('Newsgroups', r'Newsgroups: (.+)\r\n'), ('Subject', r'Subject: (.+)\r\n'), ('Date', r'Date: (.+)\r\n'), ('Lines', r'Lines: (.+)\r\n'), ('X-Priority', r'X-Priority: (.+)\r\n'), ('X-MSMail-Priority', r'X-MSMail-Priority: (.+)\r\n'), ('X-Newsreader', r'X-Newsreader: (.+)\r\n'), ('X-MimeOLE', r'X-MimeOLE: (.+)\r\n'), ('X-RFC2646', r'X-RFC2646: (.+)\r\n'), ('Xref', r'Xref: (.+)\r\n'), ('Body', r'\r\n\r\n(.+)\r\n\r\n\r\n') ) parse = {} for head, value in matchs: digs = re.compile(value,re.IGNORECASE) for test in digs.findall(data): parse[head] = test # print parse return parse ----- Original Message ----- From: lei zhenlin To: python-chinese at lists.python.cn Sent: Tuesday, July 04, 2006 9:56 AM Subject: [python-chinese] 请教读取email的办法 大家好! 我现需要解决这样一个问题:自动收取POP3邮件,将From、To、主题、信件内容保存到数据库中,将附件保存到文件中,请问如何实现最方便? 我的初步思路是,尽量使用现有的软件,如在Linux下,收meil有fetchmail,收到的mail存放在mbox邮箱中,如何解析每一封邮件就是我要实现的最关键问题了。在windows下,我发现Thundbird邮件客户端的邮箱也是mbox格式的,所以可以用Thundbird自动收邮件,但如何自动解析邮件也是关键所在。 现在的邮件客户端都需要手工来查看邮件内容、另存附件等操作,不能满足我的自动解析邮件内容的需求。 我查看了Python的mailbox、email等模块,发现是可以解析mbox邮箱的,但没有搞明白到底如何实现。请教python-chinese的朋友们,是否能够帮助我解决一下这个问题呢? 非常感谢! -- ---------------------------------------- Lei zhenlin ------------------------------------------------------------------------------ _______________________________________________ python-chinese Post: send python-chinese at lists.python.cn Subscribe: send subscribe to python-chinese-request at lists.python.cn Unsubscribe: send unsubscribe to python-chinese-request at lists.python.cn Detail Info: http://python.cn/mailman/listinfo/python-chinese -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060704/f43202f6/attachment-0001.html
2006年07月04日 星期二 13:49
非常感谢,我试试看 On 7/4/06, sun baole <sun_able at kinca.cn> wrote: > > lei zhenlin 写道: > > 大家好! > > 我现需要解决这样一个问题:自动收取POP3邮件,将From、To、主题、信件内容保存到数据库中,将附件保存到文件中,请问如何实现最方便? > > 我的初步思路是,尽量使用现有的软件,如在Linux下,收meil有fetchmail,收到的mail存放在mbox邮箱中,如何解析每一封邮件就是 > 我要实现的最关键问题了。在windows下,我发现Thundbird邮件客户端的邮箱也是mbox格式的,所以可以用Thundbird自动收邮件, > 但如何自动解析邮件也是关键所在。 > > > 现在的邮件客户端都需要手工来查看邮件内容、另存附件等操作,不能满足我的自动解析邮件内容的需求。 > > 我查看了Python的mailbox、email等模块,发现是可以解析mbox邮箱的,但没有搞明白到底如何实现。请教python-chinese > 的朋友们,是否能够帮助我解决一下这个问题呢? 非常感谢! > > -- > ---------------------------------------- > Lei zhenlin > > ------------------------------ > > _______________________________________________ > python-chinese > Post: send python-chinese at lists.python.cn > Subscribe: send subscribe to python-chinese-request at lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request at lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese > > 可以先看看这个 > http://bbs.chinaunix.net/archiver/?tid-575710.html > > _______________________________________________ > python-chinese > Post: send python-chinese at lists.python.cn > Subscribe: send subscribe to python-chinese-request at lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request at lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese > > -- ---------------------------------------- Lei zhenlin -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060704/cd12eac7/attachment.htm
2006年07月08日 星期六 00:18
用不着怎么Thundbird,直接通过pop3client读取,然后用mimetools,rfc822之类的处理就行 Programming Pythoh 里有一段代码抄给你 import poplib, getpass, sys, mailconfig mailserver = mailconfig.popservername # ex: 'pop.rmi.net' mailuser = mailconfig.popusername # ex: 'lutz' mailpasswd = getpass.getpass('Password for %s?' % mailserver) print 'Connecting...' server = poplib.POP3(mailserver) server.user(mailuser) # connect, login to mail server server.pass_(mailpasswd) # pass is a reserved word try: print server.getwelcome() # print returned greeting message msgCount, msgBytes = server.stat() print 'There are', msgCount, 'mail messages in', msgBytes, 'bytes' print server.list() print '-'*80 if sys.platform[:3] == 'win': raw_input() # windows getpass is odd raw_input('[Press Enter key]') for i in range(msgCount): hdr, message, octets = server.retr(i+1) # octets is byte count for line in message: print line # retrieve, print all mail print '-'*80 # mail box locked till quit if i < msgCount - 1: raw_input('[Press Enter key]') finally: # make sure we unlock mbox server.quit() # else locked till timeout print 'Bye.' 2006/7/4, lei zhenlin <ray8866 at gmail.com>: > > 大家好! > > 我现需要解决这样一个问题:自动收取POP3邮件,将From、To、主题、信件内容保存到数据库中,将附件保存到文件中,请问如何实现最方便? > > 我的初步思路是,尽量使用现有的软件,如在Linux下,收meil有fetchmail,收到的mail存放在mbox邮箱中,如何解析每一封邮件就是我要实现的最关键问题了。在windows下,我发现Thundbird邮件客户端的邮箱也是mbox格式的,所以可以用Thundbird自动收邮件,但如何自动解析邮件也是关键所在。 > > > 现在的邮件客户端都需要手工来查看邮件内容、另存附件等操作,不能满足我的自动解析邮件内容的需求。 > > 我查看了Python的mailbox、email等模块,发现是可以解析mbox邮箱的,但没有搞明白到底如何实现。请教python-chinese的朋友们,是否能够帮助我解决一下这个问题呢? > 非常感谢! > > -- > ---------------------------------------- > > Lei zhenlin > > > _______________________________________________ > python-chinese > Post: send python-chinese at lists.python.cn > Subscribe: send subscribe to python-chinese-request at lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request at lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060708/3370c679/attachment.html
Zeuux © 2025
京ICP备05028076号