[問題] Python 傳送圖片問題

看板Python作者 (小魯)時間8年前 (2016/05/14 13:36), 8年前編輯推噓0(002)
留言2則, 1人參與, 最新討論串1/1
我用python +pir 模組 寫了即時傳送圖片功能 但是他會連之前的一起照 例如:第一次拍A照片 第二次拍B,但是第二次會A,B都一起傳 程式如下 import smtplib import os import time import subprocess import time from email.MIMEMultipart import MIMEMultipart from email.MIMEBase import MIMEBase from email.MIMEText import MIMEText from email.MIMEImage import MIMEImage import RPi.GPIO as GPIO strFrom = '@gmail.com' strTo = '@gmail.com' msg = MIMEMultipart() msg['Subject'] = 'subject' msg['From'] = strFrom msg['To'] = strTo GPIO.setmode(GPIO.BCM) GPIO.setup(17, GPIO.IN) print "press button " # Loop until users quits while True: input=GPIO.input(17) if input == True: print "Ready" subprocess.Popen(["fswebcam","-r 720x480", "test.jpg"]) time.sleep(2) fp=open('test.jpg','rb') msgImage = MIMEImage(fp.read()) msgImage = MIMEImage(fp.read()) fp.close() msg.attach(msgImage) server = smtplib.SMTP('smtp.gmail.com',587) server.starttls() server.login('@gmail.com' , 'password') server.sendmail(strFrom, strTo,msg.as_string()) server.close() print "send" -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.12.41.6 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1463204218.A.E77.html

05/14 16:28, , 1F
因為你msg都用同一份,附件就一直疊加上去了
05/14 16:28, 1F
請問那要怎麼修改呢?謝謝 ※ 編輯: nk11208z (220.135.222.74), 05/14/2016 19:31:01

05/14 21:19, , 2F
把attach改成set_payload或是把msg的宣告放在loop裡面
05/14 21:19, 2F
以解決感謝解答 ※ 編輯: nk11208z (39.12.41.6), 05/15/2016 15:36:53
文章代碼(AID): #1NDhbwvt (Python)