Форум сайта python.su
Код с интуита взят…
Офлайн
Попробовал другой код:
#-*- coding: cp1251 -*-
import smtplib
from email.MIMEText import MIMEText
me =""
you = "agent3@mail.ru"
text = "klan"
text = unicode(text, 'cp1251').encode("koi8-r")
subj = "swu"
server = "194.67.23.111"
port = 25
user_name = "agent@mail.ru"
user_passwd = "111111"
msg = MIMEText(text, "", "cp1251")
msg['Subject'] = subj
msg['From'] = me
msg['To'] = you
s = smtplib.SMTP(server, port)
s.starttls()
s.login(user_name, user_passwd)
s.sendmail(me, you, msg.as_string())
s.quit()
c:\resource\email\iterators.py:26: Warning: 'yield' will become a reserved keyword in the future
c:\resource\email\iterators.py:26: Warning: 'yield' will become a reserved keyword in the future
Traceback (most recent call last):
File "C:\private\2000b1a5\default.py", line 81, in menu_action
f()
File "C:\private\2000b1a5\default.py", line 65, in query_and_exec
execfile(script_list[index][1].encode('utf-8'), script_namespace.namespace)
File "c:\python\222.py", line 3, in ?
from email.MIMEText import MIMEText
ImportError: cannot import name MIMEText
Офлайн
Вот вариант с интуита:
#-*- coding: cp1251 -*-
from smtplib import SMTP
fromaddr = "адрер1@маил.pу"
toaddr = "адрес@маил.pу"
message = """From: Lam <%(fromaddr)s>
To: Agent <%(toaddr)s>
Subject: From python
MIME-Version: 1.0
Content-Type: text/plain; charset=windows-1251
Content-Transfer-Encoding: 8bit
Aгa thy нax"""
connect = SMTP("smtp.mail.ru")
connect.set_debuglevel(1)
connect.sendmail(fromaddr, toaddr, message % vars())
connect.quit()
send: 'ehlo [****************]\r\n'
reply: '501 Syntactically invalid EHLO argument(s)\r\n'
reply: retcode (501); Msg: Syntactically invalid EHLO argument(s)
send: 'helo [****************]\r\n'
reply: '501 Syntactically invalid HELO argument(s)\r\n'
reply: retcode (501); Msg: Syntactically invalid HELO argument(s)
Traceback (most recent call last):
File "C:\private\2000b1a5\default.py", line 81, in menu_action
f()
File "C:\private\2000b1a5\default.py", line 65, in query_and_exec
execfile(script_list[index][1].encode('utf-8'), script_namespace.namespace)
File "c:\python\21.py", line 15, in ?
connect.sendmail(fromaddr, toaddr, message % vars())
File "c:\resource\smtplib.py", line 636, in sendmail
raise SMTPHeloError(code, resp)
SMTPHeloError: (501, 'Syntactically invalid HELO argument(s)')
Офлайн
авторизации нет + если у тебя в коде тоже русские адреса….
Офлайн
Чет ты сложное сказал, если я правильно понял, то скажу что адреса правильные лог пас не русскими буквами, эт я здесь просто написал, чтоб не палиться адресом)
Офлайн
Авторизацию как добавить, я пробовал взять из предыдущего кода, connect.login но чего то не получилось, и на интуите именно такой код, может напишите правильный, я посмотрю и пойму в нем всё…
Офлайн
http://docs.python.org/library/smtplib.html#id2
смотри как формируется сообщение
Офлайн
вот тебе рабочий пример с авторизацией…
from smtplib import SMTP
fromaddr = "admin@mobile-master.org" # От кого
toaddr = "test@gmail.com" # Кому
subj='test'
text='<b>hello world</b>'
message = """From: <%(fromaddr)s>
To: <%(toaddr)s>
Subject: %(subj)s
MIME-Version: 1.0
Content-Type: text/html; charset=Windows-1251
Content-Transfer-Encoding: 8bit
%(text)s
"""
connect = SMTP('smtp.some-site.org')
connect.login('user','password')
connect.sendmail(fromaddr, toaddr, message % vars())
connect.quit()
Отредактировано (Янв. 16, 2009 13:45:49)
Офлайн
Спасибо
Traceback (most recent call last):
File "C:\private\2000b1a5\default.py", line 81, in menu_action
f()
File "C:\private\2000b1a5\default.py", line 65, in query_and_exec
execfile(script_list[index][1].encode('utf-8'), script_namespace.namespace)
File "c:\python\21.py", line 18, in ?
connect.sendmail(fromaddr, toaddr, message % vars())
File "c:\resource\smtplib.py", line 651, in sendmail
if isinstance(to_addrs, basestring):
NameError: global name 'basestring' is not defined
Отредактировано (Янв. 16, 2009 16:50:06)
Офлайн
Исправь в исходнике модуля basestring на string. Или вообще поставь if 1:
Питона на мобиле основан на ядре 2.2, там нет типа basestring
Отредактировано (Янв. 16, 2009 22:18:31)
Офлайн