Gmailのメール一覧を取得
30分プログラム、その348。imaplibを試してみる。
前にid:dmp939が、『定期的に受信ボックスをチェックして、特定のメールをトリガーとして何かを起動するプログラムを作ろうぜ』っていう「それなんてprocmail」って感じのことを言っていたのを思いだしたので。
とりあえず、サーバはGmail固定。
使い方
$ python imap.py user name: example@gmail.com Password: Subject: =?ISO-2022-JP?B?GyRCJTUhPCVTJTlNeE1RTkE2YiROJDRAQTVhJEsbKEI=?= =?ISO-2022-JP?B?GyRCJEQkJCRGJE4kKkNOJGkkOyFKJDRAQTVhPXEhSxsoQg==?= Subject: Yay! Your Photojojo Order Shipped! (#74Y97581ED4384354) Subject: Yay! Your Photojojo Order Shipped! (#74Y97581ED4384354) Subject: Yay! Your Photojojo Order Shipped! (#74Y97581ED4384354) Subject: =?ISO-2022-JP?B?W2NvbmN1cl9hbGw6MA==?= =?ISO-2022-JP?B?MDEwOF0gORskQjduJCskaSROOCY1ZjJxGyhC?= Subject: USPS Shipment Info for CM00 6701 633U S Subject: Cron <mzp@itsuha> $HOME/workspace/pragger/podcast.sh
ソースコード
import getpass from imaplib import * imap = IMAP4_SSL('imap.gmail.com') user = raw_input('user name: ') imap.login(user,getpass.getpass()) imap.select() _,[data] = imap.search(None,'ALL') for i in data.split(' '): _,sub = imap.fetch(i,'(BODY[HEADER.FIELDS (SUBJECT)])') print sub[0][1].strip() imap.logout()