classification
Title: login() function failed in smtplib with message "argument 1 must be bytes or buffer, not str"
Type: behavior Stage: resolved
Components: Library (Lib) Versions: Python 3.0
process
Status: closed Resolution: out of date
Dependencies: 5259 Superseder:
Assigned To: Nosy List: hdvision, r.david.murray
Priority: low Keywords:

Created on 2009-06-23 16:05 by hdvision, last changed 2009-06-23 16:21 by r.david.murray. This issue is now closed.

Files
File name Uploaded Description Edit
python-shot.png hdvision, 2009-06-23 16:05 screen shot of python debugger
Messages (2)
msg89629 - (view) Author: Gehua Yang (hdvision) Date: 2009-06-23 16:05
Hi folks,

I encountered the following error with this Python code snippet. (I ran
it with Python 3.0.1). Judging from the error as shown in IDLE debugger,
the error was buried inside python. 

  try:
    server = smtplib.SMTP(EmailConfig.smtpServerName)
    server.set_debuglevel(3)
    print(server)
    server.login(bytes(EmailConfig.mailUser, encoding='ascii'),
bytes(EmailConfig.mailPass, encoding='ascii'))
    print('Login is successful.')
    failed = server.sendmail(from_addr, to_addr, text_msg)
  except Exception as ex:
    print('Error in communicating with SMTP server', ex)
  else:
    if failed : print('Failed in sending email with following
reason:\n', failed)


***********************************************
The output from terminal is:
$ c:/tools/Python30/python send_email.py
<smtplib.SMTP object at 0x00F21990>
send: 'ehlo quad-vision.hua\r\n'
reply: b'250-smtp.mxes.net\r\n'
reply: b'250-PIPELINING\r\n'
reply: b'250-SIZE 400000000\r\n'
reply: b'250-ETRN\r\n'
reply: b'250-STARTTLS\r\n'
reply: b'250-AUTH PLAIN LOGIN\r\n'
reply: b'250-AUTH=PLAIN LOGIN\r\n'
reply: b'250-ENHANCEDSTATUSCODES\r\n'
reply: b'250-8BITMIME\r\n'
reply: b'250 DSN\r\n'
reply: retcode (250); Msg: b'smtp.mxes.net\nPIPELINING\nSIZE
400000000\nETRN\nSTARTTLS\nAUTH PLAIN L
OGIN\nAUTH=PLAIN LOGIN\nENHANCEDSTATUSCODES\n8BITMIME\nDSN'
Error in communicating with SMTP server b2a_base64() argument 1 must be
bytes or buffer, not str
msg89631 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2009-06-23 16:21
This is a duplicate of issue5259, and has been fixed in 3.1.
History
Date User Action Args
2009-06-23 16:21:49r.david.murraysetstatus: open -> closed

resolution: out of date

dependencies: + smtplib is broken in Python3
stage: resolved
nosy: + r.david.murray
messages: + msg89631
priority: low
components: + Library (Lib)
type: crash -> behavior
2009-06-23 16:05:25hdvisioncreate