4.21.2011

POP3 client using Python

Python版POP3クライアント

O'REILLY『初めてのPython 第3版』をおよそ半分くらい読んだところ。
以前C++で書いたPOP3メールのヘッダ情報を出力するプログラムを、Pythonで作ってみる。

・mogmail.py(作成途中)

   1: import poplib, email
   2:  
   3: pop3 = poplib.POP3('POP3-Server')
   4: pop3.apop('UserName', 'Password')
   5:  
   6: for p in pop3.list()[1][:-6:-1]:
   7:   msg_no = p.split(' ')[0]
   8:   msg = email.message_from_string('\n'.join(pop3.retr(msg_no)[1]))
   9:  
  10:   f = lambda str: unicode(
  11:       email.Header.make_header(email.Header.decode_header(msg[str])))
  12:  
  13:   try:
  14:     print '%s\n  %s' % (f('From'), f('Subject'))
  15:   except: pass

嫉妬する程美しい言語だ!(コードが汚いのはご勘弁・・・)
ただ、たまにBase64のデコードに失敗するのはなぜだろう。

Pythonは、今世紀のプログラミング言語の最高傑作たりえるか?

(2011/4/24)改良版 ⇒ http://mogproject.blogspot.com/2011/04/pythonmogmail.html

0 件のコメント:

コメントを投稿