Fully functioning email client in Python

iaoua iaoua iaoua.iaoua at gmail.com
Sun Feb 6 02:34:41 CET 2011

Hi all,

I'm a complete newbie to this newsgroup and to Python (pretty much) so
please be nice and give me a warm welcome.

First of all please allow me to properly introduce myself. My name is
James Christian and I am a PhD student at the University of Essex in
England doing research on Machine Translation. You can see my
minimalist homepage at http://privatewww.essex.ac.uk/~jcread

Aside from machine translation I also have other AI related research
interests that have led me to seek the wisom of Python users and
developers on this newsgroup. In a nutshell my problem is this. I have
developed an intelligent conversational agent which dialogues with a
user to find out what they are really searching for. The domain is
open and helps the user find which businesses/websites offer the
services or products the user is looking for according to needs
elicited from the user during the dialogue. I have small but growing
base of experimental users who want to access the agent via email (the
agent can be quite slow at times due to the complexity of the system)
so that they can ask questions and forget about them until an answer
comes to their inbox. And so I need to extend my agent so that it can
receive and send emails and extract the relevant text answers to
questions from the user. This requires full threading capabilities and
automatic text extraction of only the new and relevant material (minus
signatures of course).

Now, I'm not completely lazy and so I have already done a little
homework. I've been reading O'Reilly's Programming Python and
Foundations of Python Network Programming which have both been very
helpful in ascertaining that Python is a strong candidate solution.
Both books talk about the email (for message and header construction
and parsing) sendmail (for sending mail via SMTP) and poplib (for
receiving mail with POP3) libraries.

However, as you can imagine I already really quite have my work cut
out with maintaining and expanding the dialogue of the system and with
the research on Machine Translation.

What I really need is a ready made fully functional Python client that
already has it that offers me a simple interface to extract text from
received messages along with a message id that I can use to associate
the response to a question with and allows me to send out new
questions or answers along with a message id I can use to track future
responses with. I need something that already has the whole shebang.
Can support POP3, IMAP, SSL authentication, message threading etc.

Can anyone point to something that will save me the effort of building
this thing from scratch and first principles? Thanks in advance for
any useful suggestions.

James Christian

More information about the Python-list mailing list