Các bạn ổn, tôi đã xem trên internet cho các độ tuổi và không thể tìm thấy câu trả lời cho điều này. Tôi đã thử nhiều gợi ý nhưng tôi dường như không thể làm cho nó hoạt động được. Tôi đang cố gắng gửi email bằng python (smtplib và các mô-đun email) và dịch vụ gmail. Dưới đây là các gói nhập khẩu của tôi:Gửi email bằng Python TypeError: Chuỗi hoặc bộ đệm dự kiến
import time, math, urllib2, urllib, os, shutil, zipfile, smtplib, sys
from email.mime.text import MIMEText
và đây là tuyên bố def của tôi để gửi email:
def sendmessage():
print('== You are now sending an email to Hoxie. Please write your username below. ==')
mcusername = str(raw_input('>> Username: '))
print('>> Now your message.')
message = str(raw_input('>> Message: '))
print('>> Attempting connection to email host...')
fromaddr = '[email protected]'
toaddrs = '[email protected]'
username = '[email protected]'
password = '1013513403'
server = smtplib.SMTP('smtp.gmail.com:587')
subject = 'Email from',mcusername
content = message
msg = MIMEText(content)
msg['From'] = fromaddr
msg['To'] = toaddrs
msg['Subject'] = subject
try:
server.ehlo()
server.starttls()
server.ehlo()
except:
print('!! Could not connect to email host! Check internet connection! !!')
os.system('pause')
main()
else:
print('>> Connected to email host! Attempting secure login via SMTP...')
try:
server.login(username,password)
except:
print('!! Could not secure connection! Stopping! !!')
os.system('pause')
main()
else:
print('>> Login succeeded! Attempting to send message...')
try:
server.sendmail(fromaddr, toaddrs, msg)
except TypeError as e:
print e
print('Error!:', sys.exc_info()[0])
print('!! Could not send message! Check internet connection! !!')
os.system('pause')
main()
else:
server.quit()
print('>> Message successfully sent! I will respond as soon as possible!')
os.system('pause')
main()
tôi đã sửa lỗi một cách rộng rãi như tôi dám và có được điều này:
>> Login succeeded! Attempting to send message...
TypeError: expected string or buffer
Điều đó có nghĩa là nó đã thành công khi đăng nhập nhưng dừng lại khi nó cố gửi tin nhắn. Một điều làm tôi bực mình là nó không chỉ ra đâu. Ngoài ra mã hóa của tôi có thể không phải là tuyệt vời như vậy không có bắt nạt trên mạng.
Bất kỳ trợ giúp nào sẽ được đánh giá rất nhiều! Cảm ơn.