В общем проблема нарисовалась с коннектом, на сервере стоит ESMTP, то есть при первом запросе сервер возвращает 220 smtp.localhost ESMTP Exim 4.69 Sun, 05 Dec 2010 08:48:19 +0300 после фатальную ошибку 501 Syntactically invalid EHLO argument(s)
Уже мозг вынес, если сервер идёт с расширением ESMTP, то почему так реагирует на команду
Ты написал только ответы, а что ты ему посылаешь - не написал. Он же говорит "Синтаксически неправильный EHLO аргумент". Может ты вместо HELO отправил EHLO?
05 Дек 2010, 10:15
#-*-encoding:UTF-8-*-
import smtplib
import email
from email.mime.text import MIMEText
import time
import random
host = "smtp.host.ru"
port = 2525
username = "?????"
password = "*****"
sender = "?????@host.ru"
subject = u"Привет!"
f = open("email_list.txt", "rb")
lines = f.readlines()
f.close()
f = open("message.txt", "rb")
message = f.read()
f.close()
# цикл рассылаем письма
for line in lines:
recipient = line.strip()
print "\r\n", recipient,
tmp = recipient.split("@")
s = message
s = s.replace("{%username%}", tmp[0])
headers = MIMEText(s, "plain", "utf-8")
headers["From"] = sender
headers["To"] = recipient
headers["Subject"] = subject
headers = headers.as_string()
smtp = smtplib.SMTP(host, port)
smtp.login(username, password)
try:
smtp.sendmail(sender, recipient, headers)
except Exception, e:
print u" Ошибка: ", e
else:
print u" письмо доставлено."
smtp.quit()
print "\r\n"
sec = random.randint(60, 100)
print u"Ждём " + str(sec) + u" сек..."
time.sleep(sec)
print u"\r\nПрограмма завершена..."
while 1:
pass
OZ_, ну дак это первая команда, больше ничего не посылал, и если расширение стоит, то надо писать эхло , а не хэло
05 Дек 2010, 12:56удалите это сообщение - создаю тему
wovo4ka, просто suhonok создал тему по smtp =) а не вопросы ответы по smtp
18 Мар 2011, 13:21