Ich mache eine einfache WebApp mit Flask-Framework in Python. Es dauert Benutzereingaben für E-Mail und Name von meiner Website (www.anshulbansal.esy.es) und wird prüfen, ob E-Mail in der Datenbank existiert (hier Datenbank wird als Wörterbuch für jetzt vorausgesetzt) dann wird es nicht weiter arbeiten, aber wenn es nicht in der Datenbank existiert, Es wird ein zufälliger Link zu der eingereichten E-Mail gesendet und wenn der Benutzer auf den Link klickt, wird seine Information zu meiner Datenbank hinzugefügt.Wie löse ich builtins.ConnectionRefusedError Fehler beim Versuch, E-Mail mit Flashmail zu senden
Es ist fast fertig, aber dieser Fehler kommt mir in den Weg. Schauen Sie sich diesen Code:
from flask import Flask, render_template, request, redirect, url_for
from flask_mail import Mail, Message
import random
import string
def random_generator(size=6, chars=string.ascii_letters + string.digits):
return ''.join(random.choice(chars) for x in range(size))
subscribers_d = {'[email protected]': 'Anshul Bansal', '[email protected]': 'Bansal', '[email protected]': 'Anshul',}
app = Flask(__name__)
mail = Mail(app)
app.config.update(
MAIL_SERVER='smtp.gmail.com',
MAIL_PORT=465,
MAIL_USE_TLS = False,
MAIL_USE_SSL=True,
MAIL_USERNAME='[email protected]',
MAIL_PASSWORD="It's Secret"
)
@app.route('/')
def index():
return render_template("index.html")
@app.route('/submit', methods=['POST'])
def submit():
if request.method == "POST":
v_name = request.form['vname']
v_email = request.form['vemail']
return send_mail(v_name, v_email)
else:
return redirect(url_for("/"))
random_link_sent = random_generator(20)
@app.route("/")
def send_mail(v_name, v_email):
if v_email in subscribers_d:
return "Oh! It seems that you have already registered."
else:
msg = Message('Confirm Subscription', sender=['[email protected]'], recipients=[v_email])
msg.html = "<h3>Confirm Subscription</h3>" \
"<p>Hi! </p>" + v_name + "<p> , Please click on below link to subscribe</p>" \
"Link: " + ' www.anshulbansal.esy.es/' + random_link_sent
mail.send(msg)
return 'Check Your Inbox For Confirmation Email'
@app.route("/<random_link_sent>")
def confirm(random_link_sent):
return "You have registered on " + random_link_sent
subscribers_d[v_email] = v_name
if __name__ == "__main__":
app.run(debug=True)
Aber dieser Code gibt mir einen builtins.ConnectionRefusedError Fehler. Aber vor 2-3 Versuchen des Sendens von E-Mail waren ohne Fehler erfolgreich. Wie löse ich es?
Here is the screenshot of error
Sie versuchen, 2-3 mal? Sie erhalten einen besseren E-Mail-Anbieter? Es gibt nicht wirklich etwas, was wir bezüglich der Qualität der von Ihnen verwendeten Drittanbieterdienste tun können. – davidism
Ja, ich habe es viele Male versucht. Es funktionierte gut in 3-4 Versuchen. –