I'm really confused what you're asking. Can you explain further please?
cscgal
The Queen of DaniWeb
19,427 posts since Feb 2002
Reputation Points: 1,474
Solved Threads: 230
I imagine you used the smtplib module and its functions to send e-mail. Well, you use the poplib module and its functions to view and delete e-mail.
Use help('poplib') to get details.
A rather crummy example is at
http://docs.python.org/lib/pop3-example.html
vegaseat
DaniWeb's Hypocrite
5,989 posts since Oct 2004
Reputation Points: 1,345
Solved Threads: 1,417
Found code in one of the books in the CS library:
# view and delete e-mail using the POP3 protocol
import sys, getpass, poplib, re
# change according to your needs
POPHOST = "pop.domain.com"
POPUSER = "joedoe"
POPPASS = ""
# the number of message body lines to retrieve
MAXLINES = 10
HEADERS = "From To Subject".split()
# headers you're actually interested in
rx_headers = re.compile('|'.join(headers), re.IGNORECASE)
try:
# connect to POP3 and identify user
pop = poplib.POP3(POPHOST)
pop.user(POPUSER)
if not POPPASS or POPPASS=='=':
# if no password was supplied, ask for it
POPPASS = getpass.getpass("Password for %s@%s:" % (POPUSER, POPHOST))
# authenticate user
pop.pass_(POPPASS)
# get general information (msg_count, box_size)
stat = pop.stat( )
# print some information
print "Logged in as %s@%s" % (POPUSER, POPHOST)
print "Status: %d message(s), %d bytes" % stat
bye = 0
count_del = 0
for n in range(stat[0]):
msgnum = n+1
# retrieve headers
response, lines, bytes = pop.top(msgnum, MAXLINES)
# print message info and headers you're interested in
print "Message %d (%d bytes)" % (msgnum, bytes)
print "-" * 30
print "\n".join(filter(rx_headers.match, lines))
print "-" * 30
# input loop
while 1:
k = raw_input("(d=delete, s=skip, v=view, q=quit) What?")
k = k[:1].lower( )
if k == 'd':
# Mark message for deletion
k = raw_input("Delete message %d? (y/n)" % msgnum)
if k in "yY":
pop.dele(msgnum)
print "Message %d marked for deletion" % msgnum
count_del += 1
break
elif k == 's':
print "Message %d left on server" % msgnum
break
elif k == 'v':
print "-" * 30
print "\n".join(lines)
print "-" * 30
elif k == 'q':
bye = 1
break
# done ...
if bye:
print "Bye"
break
# summary
print "Deleting %d message(s) in mailbox %s@%s" % (
count_del, POPUSER, POPHOST)
# close operations and disconnect from server
print "Closing POP3 session"
pop.quit( )
except poplib.error_proto, detail:
# possible error
print "POP3 Protocol Error:", detail
bumsfeld
Nearly a Posting Virtuoso
1,445 posts since Jul 2005
Reputation Points: 404
Solved Threads: 184
There is a booboo in the book, headers should be HEADERS.
vegaseat
DaniWeb's Hypocrite
5,989 posts since Oct 2004
Reputation Points: 1,345
Solved Threads: 1,417