うん、私の反応は少し変だった。
別のファイルで次のファイルを実行しています。
メール確認.sh(源泉)
import subprocess
import sys
import telnetlib
#print 'email:<%s> \n' % str(sys.argv[1])
if len(sys.argv) == 1:
print "ERROR:\tYou must provide an email address you wish to validate."
sys.exit(1)
rcpt = 'rcpt to:<%s>\n' % str(sys.argv[1])
print rcpt
domain = str(sys.argv[1]).split('@')[1]
print domain
server = (subprocess.check_output(['dig', '+short', domain,'MX'])).split('\n')
print 'Server:<%s>\n' % server
server.pop()
server.sort()
print 'Server[0]:<%s>\n' % server[0]
server = (server[0]).split(' ')[1].rsplit('.', 1)[0]
print 'Server after spliting:<%s>\n' % server
#============================[ TELNET SESSION ]=================================
telnet = telnetlib.Telnet(server, "25")
telnet.write('ehlo computer.com\n')
telnet.write('mail from:<[email protected]>\n')
telnet.write(rcpt)
telnet.write('quit\n')
#print 'rcpt final:<%s>\n' % rcpt
return_code = (telnet.read_all().split('\n')[-3]).split(' ')[0]
#print 'return_code:<%s>\n' % return_code
if return_code != '250':
#print '%r is *NOT* a valid recipient on %s' % (str(sys.argv[1]), domain)
sys.exit(2)
else:
print str(sys.argv[1])
sys.exit(0)
電子メールリストを含むファイル(sample.txt)があります。
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
私はexample.txtを1行ずつ処理し、./verify-email.shを実行するUnixスクリプトを実行しています。
while read in;
do
./verify-email.py "$in";
done < /home/itstym/Desktop/email_database/sample.txt
しかし、エコーが聞こえました(ライン7)。
>cpt to:<[email protected]
instead of this
rcpt to:<[email protected]