import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import qApp
class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(590, 325)
    self.verticalLayoutWidget = QtWidgets.QWidget(Form)
    self.verticalLayoutWidget.setGeometry(QtCore.QRect(10, 10, 231, 251))
    self.verticalLayoutWidget.setObjectName("verticalLayoutWidget")
    self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget)
    self.verticalLayout.setContentsMargins(0, 0, 0, 0)
    self.verticalLayout.setObjectName("verticalLayout")
    self.label = QtWidgets.QLabel(self.verticalLayoutWidget)
    self.label.setObjectName("label")
    self.verticalLayout.addWidget(self.label)
    self.lineEdit = QtWidgets.QLineEdit(self.verticalLayoutWidget)#mail adresi
    self.lineEdit.setObjectName("lineEdit")
    self.verticalLayout.addWidget(self.lineEdit)
    self.label_2 = QtWidgets.QLabel(self.verticalLayoutWidget)
    self.label_2.setObjectName("label_2")
    self.verticalLayout.addWidget(self.label_2)
    self.lineEdit_2 = QtWidgets.QLineEdit(self.verticalLayoutWidget)#şifre
    self.lineEdit_2.setObjectName("lineEdit_2")
    self.verticalLayout.addWidget(self.lineEdit_2)
    self.label_6 = QtWidgets.QLabel(self.verticalLayoutWidget)
    self.label_6.setObjectName("label_6")
    self.verticalLayout.addWidget(self.label_6)
    self.verticalLayoutWidget_2 = QtWidgets.QWidget(Form)
    self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(250, 10, 331, 251))
    self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2")
    self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget_2)
    self.verticalLayout_2.setContentsMargins(0, 0, 0, 0)
    self.verticalLayout_2.setObjectName("verticalLayout_2")
    self.label_3 = QtWidgets.QLabel(self.verticalLayoutWidget_2)
    self.label_3.setObjectName("label_3")
    self.verticalLayout_2.addWidget(self.label_3)
    self.lineEdit_4 = QtWidgets.QLineEdit(self.verticalLayoutWidget_2)#konu
    self.lineEdit_4.setObjectName("lineEdit_4")
    self.verticalLayout_2.addWidget(self.lineEdit_4)
    self.label_5 = QtWidgets.QLabel(self.verticalLayoutWidget_2)
    self.label_5.setObjectName("label_5")
    self.verticalLayout_2.addWidget(self.label_5)
    self.lineEdit_3 = QtWidgets.QLineEdit(self.verticalLayoutWidget_2)#içerik
    self.lineEdit_3.setText("")
    self.lineEdit_3.setObjectName("lineEdit_3")
    self.verticalLayout_2.addWidget(self.lineEdit_3)
    self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
    self.horizontalLayoutWidget.setGeometry(QtCore.QRect(10, 299, 571, 21))
    self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
    self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
    self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
    self.horizontalLayout.setObjectName("horizontalLayout")
    self.label_4 = QtWidgets.QLabel(self.horizontalLayoutWidget)
    self.label_4.setObjectName("label_4")
    self.horizontalLayout.addWidget(self.label_4)
    self.lineEdit_5 = QtWidgets.QLineEdit(self.horizontalLayoutWidget)#gönderilecek mail
    self.lineEdit_5.setObjectName("lineEdit_5")
    self.horizontalLayout.addWidget(self.lineEdit_5)
    self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget)
    self.pushButton.setObjectName("Gönder")
    self.horizontalLayout.addWidget(self.pushButton)
    self.pushButton.clicked.connect(self.click)
    self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
    self.pushButton_2.setObjectName("Çıkış")
    self.horizontalLayout.addWidget(self.pushButton_2)
    self.pushButton_2.clicked.connect(self.click_2)
    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def click(self):
    self.mesaj = MIMEMultipart()  # Mesaj yapısını burda oluşturuyoruz
    self.mesaj["From"] = self.lineEdit.text()  # Kimden gideceği
    self.mesaj["To"] = self.lineEdit_5.text()  # Kime gideceği
    self.mesaj["Subject"] = self.lineEdit_4.text()  # Mesaj konusu
    # Mailin İçeriği
    self.yazi = self.lineEdit_3.text()
    mesaj_govdesi = MIMEText(self.yazi, "plain")  # Mailimizin gövdesini bu sınıftan oluşturuyoruz
    self.mesaj.attach(mesaj_govdesi)  # Mailimizin gövdesini mail yapımıza ekliyoruz.
    try:
        mail = smtplib.SMTP("smtp.gmail.com",
                            587)  # STMP objemizi oluşturuyoruz ve gmail smtp server'ına bağlanıyoruz.
        mail.ehlo()  # SMTP serverına kendimizi tanıtıyoruz.
        mail.starttls()  # Adresimizin ve parolamızın şifrelenmesi için gerekli
        mail.login(self.lineEdit.text(), self.lineEdit_2.text())  # SMTP serverina giriş yapıyoruz.
        mail.sendmail(self.mesaj["From"], self.mesaj["To"], self.mesaj.as_string())  # Mailimizi gönderiyoruz
        self.label_6.setText(("Form","Mesaj Başarıyla Gönderildi"))
        mail.close()  # SMTP serverımızın bağlantısını koparıyoruz.
    except:
        self.label_6.setText("Mesaj Gönderme İşlemi Başarısız Oldu")
def click_2(self):
    qApp.quit()
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "Mail Gönderme"))
    self.label.setText(_translate("Form", "E-Mail Adresiniz:"))
    self.label_2.setText(_translate("Form", "Şifreniz:"))
    self.label_3.setText(_translate("Form", "Mesajınızın Konusu:"))
    self.label_5.setText(_translate("Form", "Mesajınızın İçeriği:"))
    self.label_4.setText(_translate("Form", "Göndereceğiniz Mail Adresi:"))
    self.pushButton.setText(_translate("Form", "Gönder"))
    self.pushButton_2.setText(_translate("Form","Çıkış"))
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    Form = QtWidgets.QWidget()
    ui = Ui_Form()
    ui.setupUi(Form)
    Form.show()
    sys.exit(app.exec_())