자동이메일 코드입니다. 파이썬이구요, 노트북에서는 되고, 데스크탑은 오류가 납니다. gethostbyaddr 에서 UnicodeDecodeError

조회수 556회

데스크탑에서 오류가 나는데.. 이유를 아시는 분 설명 좀 부탁드립니다.

이틀동안 이것만 찾는데, 학습진도가 안나가서 질문드립니다.


from email.mime.text import MIMEText

from email.mime.multipart import MIMEMultipart

import smtplib

import re


SMTP_SERVER = 'smtp.gmail.com'

SMTP_PORT = 465

SMTP_USER = '************@gmail.com' # 아이디는 맞게 넣었습니다.

SMTP_PASSWORD = '0000000000000000' #16자리의 앱비밀번호 넣었습니다.


def send_mail(name, addr, subject, contents):

    msg = MIMEMultipart('alternative')
    msg['From'] = SMTP_USER
    msg['To'] = addr
    msg['Subject'] = name + '님, ' + subject

    text = MIMEText(contents, _charset='utf-8')
    msg.attach(text)

    smtp = smtplib.SMTP_SSL(SMTP_SERVER, SMTP_PORT)
    smtp.login(SMTP_USER, SMTP_PASSWORD)
    smtp.sendmail(SMTP_USER, addr, msg.as_string())
    smtp.close()

contents = '''안녕하세요. 되는지 함 봅시다.

자동화로 보내지는 메일입니다. '''

send_mail('*****', '*********@gmail.com', '자동화 메일입니다.', contents)

위 코드가 노트북에서는 작동합니다. 다만 데스크탑에서 실행하면

Traceback (most recent call last):

  File "C:\Users\User\Desktop\업무자동화 MAX\올인원패키지-업무자동화max-강의자료\9. 파이썬 업무자동화 (Basic)\Basic\27th\27th-2.py", line 30, in <module>

    send_mail('******', '********@gmailcom', '자동화 메일입니다.', contents)

  File "C:\Users\User\Desktop\업무자동화 MAX\올인원패키지-업무자동화max-강의자료\9. 파이썬 업무자동화 (Basic)\Basic\27th\27th-2.py", line 21, in send_mail

    smtp = smtplib.SMTP_SSL(SMTP_SERVER, SMTP_PORT)


  File "C:\Users\User\AppData\Local\Programs\Python\Python39\lib\smtplib.py", line 1034, in __init__

    SMTP.__init__(self, host, port, local_hostname, timeout,


  File "C:\Users\User\AppData\Local\Programs\Python\Python39\lib\smtplib.py", line 263, in __init__
    fqdn = socket.getfqdn()


  File "C:\Users\User\AppData\Local\Programs\Python\Python39\lib\socket.py", line 791, in getfqdn
    hostname, aliases, ipaddrs = gethostbyaddr(name)


UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc3 in position 0: invalid continuation byte

이렇게 오류가 뜹니다.

인강으로 공부중인데 진도가 안나가서, 꼭 좀 도와주세요.

1 답변

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)