#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, )