0
我正在開發一個大項目,其中包括一個用於記住用戶的數據庫。我跳過細節,但我的客戶希望我包括一個功能,以便他可以備份所有的用戶數據和其他文件。Python - 發送帶附件的電子郵件
我在想電子郵件,(因爲該項目是一個Android應用程序),我試圖找出如何發送電子郵件中的附件(即.db sqlite3文件)。我知道here附近有很多相似的問題,但this問題的所有答案都給我一個錯誤。這裏要說的是我得到的最接近:
這個程序發送電子郵件沒有附件:
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
boodskap = MIMEText("Toekomsweb Epos toets", 'plain')
van_adres = "from adres"
na_adres = "to adres"
epos_liggaam = MIMEMultipart('alternatief')
epos_liggaam['Subject'] = "Toets"
epos_liggaam['From'] = van_adres
epos_liggaam['To'] = na_adres
epos_liggaam.attach(boodskap)
mail = smtplib.SMTP('smtp.gmail.com',587)
mail.ehlo()
mail.starttls()
mail.login(van_adres,'PASSWORD')
mail.sendmail(van_adres,na_adres,epos_liggaam.as_string())
mail.close()
print("succes!")
請原諒我那可憐的變量命名,它不是英語。
發送附件的任何幫助?
謝謝!
爲什麼不將備份文件只是發送給一些專門的FTP服務器?發送這封電子郵件附件似乎是一個非常糟糕的主意 - 至少由於STMP服務器端可能存在一些附件大小限制,因此無法在一天內發送備份(當數據庫快照會放大時)。 –
好的,你已經證明你已經通過顯示代碼並參考了SO的其他問題和答案進行了一些研究。但是你說其他答案會給你錯誤,而不會解釋測試中使用的代碼是什麼以及錯誤是什麼。你應該顯示出來,以獲得調試幫助。 –
我得到的錯誤是:錯誤:[Errno 111]連接被拒絕,但不用擔心,我想出了,由於某種原因,linux有不同的發送電子郵件的方式,所以問題不在於附件,而是與發送...我回答我自己的問題與我用來讓它工作的代碼... –