Question

Je vais avoir des problèmes avec smtplib attacher mon programme lorsque l'envoi d'email échoue, car un délai d'attente est jamais relevé. Le serveur que je utilise ne fonctionne pas et ne sera jamais avoir python supérieur à 2,4, je ne peux pas utiliser l'argument de délai d'attente au constructeur SMTP dans les versions ultérieures de python.

Python docs 2.4 montrent que le SMTP classe n'a pas l'argument 'timeout':

class SMTP([host[, port[, local_hostname]]])

Alors, comment puis-je simuler cette fonctionnalité?

Était-ce utile?

La solution

import socket
socket.setdefaulttimeout(120)

fera tout le temps de prise après 2 minutes, à moins que le délai d'attente de prise spécifique est changé (et je crois que SMTP en Python 2.4 ne fait pas ce dernier).

Modifier : apparemment par le commentaire de l'OP ce casse TLS, donc, le plan B ...:

Qu'en est-il saisir le fichier 2.6 de source smtplib et rétroportage comme votre propre module à votre 2.4? Ne devrait pas être trop dur ... et ne délai d'attente de soutien proprement -)

Voir . ..

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top