該腳本的目的是偵聽串行端口併發送帶有觸發時檢索到的ip相機圖片的電子郵件。這是我迄今爲止的錯誤。在python腳本上附加MIME時出錯
`導入時間 進口串行 從email.MIMEMultipart進口MimeMultipart的 從email.MIMEText MimeText用於導入從 進口email.MIMEImage MIMEImage 進口的smtplib 進口日期時間 進口的urllib
TO = '[email protected]'
GMAIL_USER = '[email protected]'
GMAIL_PASS = 'password'
SUBJECT = 'Intrusion= NODE 18'
TEXT = 'MOVEMENT'
ser = serial.Serial('/dev/tty.usbserial-DA00S0U6', 115200)
def send_email():
urllib.urlretrieve ("http://<IPADDRESS>/snapshot/view4.jpg","view4.jpg")
print("Sending Email")
print str(datetime.datetime.now())
smtpserver = smtplib.SMTP("smtp.gmail.com",587)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo
smtpserver.login(GMAIL_USER, GMAIL_PASS)
header = 'To:' + TO + '\n' + 'From: ' + GMAIL_USER
header = header + '\n' + 'Subject:' + SUBJECT + '\n'
print header
msg = MIMEMultipart() + header + '\n' + TEXT + ' \n\n'
msg.attach(MIMEImage(file("view4.jpg").read()))
smtpserver.sendmail(GMAIL_USER, TO, msg)
smtpserver.close()
while True:
message = ser.readline()
print(message)
if "[18] MOTION" in message :
send_email()
time.sleep(0.5)`
ERROR:= ==
Traceback (most recent call last): File "motion3.py", line 58, in <module> send_email() File "motion3.py", line 32, in send_email msg = MIMEMultipart() + header + '\n' + TEXT + ' \n\n' TypeError: unsupported operand type(s) for +: 'instance' and 'str'