Я хочу вызвать электронное письмо при нажатии кнопки. Функция email()
отправляет электронное письмо через почтовый SMTP-сервер. При нажатии на кнопку отправляется электронное письмо, но приложение немедленно вылетает с ошибкой
TypeError: email() takes 1 positional argument but 2 were given
Как улучшить код, чтобы приложение не обрабатывало sh после нажатия кнопки?
вот код
# import kivy module
import kivy
import smtplib
kivy.require("1.11.1")
from kivy.app import App
from kivy.uix.button import Button
# class in which we are creating the button
class ButtonApp(App):
def build(self):
# use a (r, g, b, a) tuple
btn = Button(text="Send Email !",
font_size="20sp",
background_color=(1, 1, 1, 1),
color=(1, 1, 1, 1),
size=(32, 32),
size_hint=(.2, .2),
# on_press = root.email,
pos=(300, 250))
btn.bind(on_press = self.email)
return btn
def email(self):
s = smtplib.SMTP('smtp.gmail.com', 587)
s.starttls()
s.login("BLAHBLAH@gmail.com", "hjqqKJSN98")
message = "\n Hello "
s.sendmail("blahblah@gmail.com", "receiver@gmail.com", message)
# terminating the session
s.quit()
return
root = ButtonApp()
root.run()