Я работаю над большим проектом, который включает в себя базу данных для запоминания пользователей. il пропустить подробности, но мой клиент хочет, чтобы я включил функцию, с помощью которой он может создавать резервные копии всех пользовательских данных и других файлов.Python - отправка электронной почты с приложением
Я думал об электронном письме (поскольку проект является приложением для Android), и я пытался выяснить, как вы можете отправить прикрепление (например, файл sqlite3 .db) в электронном письме. Я знаю, что много ответов на вопросы по поводу более 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] Connection отказался, но не волновался, я понял, по какой-то причине linux имеет другой способ отправки электронной почты, поэтому проблема была не в приложении, а скорее с отправкой ... Я отвечу на свой вопрос с кодом, который я использовал, чтобы заставить его работать ... –