Для моего приложения я добавляю функцию «сообщить пользователю». Чтобы избежать более длинного кода, я хочу сообщить о функции, которая будет другим скриптом. То, что я пытаюсь сделать, это когда один пользователь сообщает другому, он отправляет мне электронное письмо. Однако, когда я запускаю первый скрипт ниже, он просто отправляет мне пустое электронное письмо, а не данные, которые я ввел на панели пользовательского интерфейса.
Основной скрипт
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *
import reportit
report_frame = QFrame()
report_frame.setWindowTitle('Report User')
report_box = QFormLayout(report_frame)
rp = QLabel("Enter the user you want to report:",report_frame)
reported_user = QLineEdit(report_frame)
cop = QLabel("Cause of report:",report_frame)
cause_of_report = QTextEdit(report_frame)
report_button_2 = QPushButton("Report the user")
def report():
target_user = reported_user.text()
cause = cause_of_report.toPlainText()
report_text_body = target_user,":", cause
reportit.send_report(report_text_body)
reportit.py
import smtplib
def send_report(msg):
from_addr = "suleymanyamantr@gmail.com"
to_addr= "suleymanyamantr@gmail.com"
username = "suleymanyamantr@gmail.com"
password = "XXXXX"
server = smtplib.SMTP('smtp.gmail.com:587')
server.ehlo()
server.starttls()
server.login(username, password)
server.sendmail(from_addr, to_addr, str(msg))
server.quit()