In [29]:
from IPython.display import Image
In [31]:
Image('http://i.imgur.com/SYija2N.png')
Out[31]:
In [12]:
import mailbox
from email.utils import parsedate
from dateutil.parser import parse
import itertools
import plotly.plotly as py
from plotly.graph_objs import *
In [13]:
path = '/Users/jack/Desktop/All mail Including Spam and Trash.mbox'
In [22]:
mbox = mailbox.mbox(path)
In [23]:
def extract_date(email):
date = email.get('Date')
return parsedate(date)
sorted_mails = sorted(mbox, key=extract_date)
mbox.update(enumerate(sorted_mails))
mbox.flush()
In [24]:
all_dates = []
mbox = mailbox.mbox(path)
for message in mbox:
all_dates.append( str( parse( message['date'] ) ).split(' ')[0] )
In [25]:
email_count = [(g[0], len(list(g[1]))) for g in itertools.groupby(all_dates)]
In [26]:
email_count[0]
Out[26]:
In [27]:
x = []
y = []
for date, count in email_count:
x.append(date)
y.append(count)
In [28]:
py.iplot( Data([ Scatter( x=x, y=y ) ]) )
Out[28]:
In [10]:
import plotly.tools as tls
tls.embed('https://plot.ly/~jackp/3266')
Out[10]:
In [11]:
from IPython.core.display import HTML
import urllib2
HTML(urllib2.urlopen('http://bit.ly/1Bf5Hft').read())
Out[11]: