IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

[Python 3.x] Soucis avec server.connect pour autre chose que gmail.com


Sujet :

Python

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    571
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 571
    Points : 97
    Points
    97
    Par défaut [Python 3.x] Soucis avec server.connect pour autre chose que gmail.com
    Bonjour,

    Je précise d'entrée, j'aie attaqué Python il n'y a pas très longtemps ...
    J'ai un petit soucis avec mon code ci-dessous, je pense que cela vient de la lib smtplib .... mais pas certaine
    Je vous joins le code
    Si j'utilise comme domaine "gmail.com" ca marche nickel, mais dès que j'en utilise un autre ex yahoo.com dans mon exemple, ca bloque au niveau du server.connect .... le print("2") ne passe jamais et bloque le terminal ...

    Une petite idée ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    import re
    import dns.resolver
    import smtplib
     
    records = dns.resolver.query("yahoo.com", 'MX')
    mxRecord = records[0].exchange
    mxRecord = str(mxRecord)
    print('mxRecord:', mxRecord)
     
    server = smtplib.SMTP()
    server.set_debuglevel(0)
     
    # SMTP Conversation
    print('1')
    server.connect(mxRecord)
    print('2')
    Merci pour votre aide

    Thais

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    "connect" est une fonctionnalité des sockets qui viennent avec le système.
    Si le serveur distant ne répond pas, çà attend très longtemps... et pour que çà sorte plus rapidement, il faut préciser un timeout (ligne 10: server = smtplib.SMTP(timeout=...))

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    571
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 571
    Points : 97
    Points
    97
    Par défaut
    Ok, bon je dois en deduire que ce truc de "connect" est une dobe puisque ca ne fonctionne que dans tres peut de cas .....?

    Connais tu une meilleure méthode pour faire le job ?

    Thais

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par thais781 Voir le message
    Ok, bon je dois en deduire que ce truc de "connect" est une dobe puisque ca ne fonctionne que dans tres peut de cas .....?
    connect fonctionne très bien mais le host que vous avez récupéré ne répond pas.
    Le problème est plutôt dans le choix du host dans la liste retournée par dns.resolver.
    A vous d'apprendre à l'utiliser: c'est pas de la programmation Python.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    571
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 571
    Points : 97
    Points
    97
    Par défaut
    Ok, c'est moi la dobe alors

    Je vais continuer à apprendre autour du coté du choix du host alors

    Merci pour votre aide

    Thais

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Soucis avec le code pour l'ouverture de l'etat.
    Par adelion7015 dans le forum VBA Access
    Réponses: 3
    Dernier message: 06/06/2017, 15h37
  2. Angular pour autre chose que du one page
    Par grunk dans le forum Angular
    Réponses: 5
    Dernier message: 02/03/2016, 14h17
  3. Soucis avec Net::SFTP pour une connexion Windows -> Linux
    Par Schnuffel dans le forum Modules
    Réponses: 4
    Dernier message: 22/12/2011, 15h18
  4. [RegEx] Souci avec une expression pour un controle
    Par diblasio dans le forum Langage
    Réponses: 2
    Dernier message: 19/04/2011, 17h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo