2
私はいくつかの日のための答えを探しています、今まで私はちょうど私の問題を解決しませんでした。 エラーが発生した場合、私のプログラムから簡単な電子メールメッセージを送信するだけです。 私はGmailサーバーを使ってメールを送信していますが、実際にメールを送信しますが、メールのメッセージは表示されません。ここ はコードです:smtplibとMIMETextで電子メールを送信するには?
def accept(self):
HOST = 'smtp.gmail.com'
PORT = '587'
user = '***********@gmail.com'
senha = '***********'
servidor = smtplib.SMTP()
servidor.connect(HOST, PORT)
servidor.ehlo()
servidor.starttls()
servidor.ehlo()
servidor.login(user, senha)
assunto = 'Relatorio de Erro'
para = '**************@hotmail.com'
endereco = self.nemail.text()
de = str(endereco)
texto = self.message.toPlainText()
textos = Message(texto)
corpo = MIMEText(textos)
corpo['From'] = de
corpo['To'] = user
corpo['Subject'] = assunto
servidor.set_debuglevel(1)
servidor.sendmail(user, para, corpo.as_string())
servidor.quit
これはます:MIMETextにエラーが発生します。 MIMETextをstrに変換できないと言っています。 私は別のバージョンを試してみました。 単純な文字列の送信:
def accept(self):
HOST = 'smtp.gmail.com'
PORT = '587'
user = '*************@gmail.com'
senha = '************'
servidor = smtplib.SMTP()
servidor.connect(HOST, PORT)
servidor.ehlo()
servidor.starttls()
servidor.ehlo()
servidor.login(user, senha)
assunto = 'Relatorio de Erro'
para = '*********@hotmail.com'
servidor.set_debuglevel(1)
servidor.sendmail(user, para, assunto)
servidor.quit()
メールが受信トレイを右に来るが、それは何のメッセージ、何もしています。 私は多くを検索しました。私はドキュメントを読んでいました。私は何をしているのか分からないほど多くのことを試しました。私はほとんど手に入れているようです。 誰かが私を助けることができますか?
[OK]を今すぐに解決しました。 ありがとう@jlargent。 文字列のエンコーディングが問題のようです。 私がやった変更は次のとおりです。 corpo = MIMEText(textos.encode( 'utf-8')、_charset = 'utf-8') 私は試してみましたが、うまくいきました。 –