Добавлены дополнительные параметры в smtplib.SMTP в python

#python #smtplib

#python #smtplib

Вопрос:

Я пытаюсь создать скрипт, который отправлял электронное письмо с помощью python, используя smtp.smtplib , почти все примеры, которые я нашел во время поиска в Google, показывают, как вызвать эту функцию только с параметрами smtpserver и port.

я хочу добавить другие параметры: домен и IP-адрес привязки

я попробовал это: server = smtplib.SMTP(smtpserver, 25,'mydomain.com',5,'myServerIP') я получил это как ошибку: TypeError: init() принимает не более 5 аргументов (задано 6)

Можете ли вы предложить способ сделать это?

Ответ №1:

Эта ошибка, вероятно, вызвана тем, что параметры недопустимы (их слишком много). Попробуйте посмотреть документы smtplib, чтобы узнать, какие параметры допустимы

Комментарии:

1. Я следовал официальной документации: smtplib.SMTP(host=», port= 0, local_hostname= None, [timeout, ]source_address= None)

2. Вы могли бы попробовать включить «host =» и т. Д. Части, Чтобы Python точно знал, что вы имеете в виду.

3. сервер = smtplib.SMTP(smtpserver, 25,’domain.com ‘,5,host=’IP’) Ошибка типа: __init__() получил несколько значений для ключевого аргумента ‘host’

4. Попробуйте проделать это с каждым параметром. Python обычно не любит, когда программисты непоследовательны

5. он работает без параметра SOURCE_ADDRESS: server = smtplib.SMTP( хост = smtpserver, порт = 25, local_hostname=’domain.com ‘, тайм-аут = 10, )