This what ive tried so far :
# view and delete e-mail using the POP3 protocol
import sys, getpass, poplib, re
# change according to your needs
POPHOST = "pop3.126.com"
POPUSER = "Username"
POPPASS = "pass"
# 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
this give me the error:
POP3 Protocol Error: -ERR Unable to log on
Does anyone know what the problem is? I'm using a gmail account and all the login information is correct.
Edit:
ive changed the code up a bit and now i get his error...here the code and the error:
import poplib
user = "[email protected]"
passs = "password"
pop = poplib.POP3("pop.gmail.com",995)
pop.user(user)
pop.pass_(passs)
and i get this error:
File "C:\Python27\lib\poplib.py", line 86, in __init__
self.welcome = self._getresp()
File "C:\Python27\lib\poplib.py", line 124, in _getresp
resp, o = self._getline()
File "C:\Python27\lib\poplib.py", line 108, in _getline
if not line: raise error_proto('-ERR EOF')
error_proto: -ERR EOF
i have found code that works...here it is: