
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
6강에서 3번째 조건으로 코드작성을 gpt에서 물어보면 아래와 같이 작성되어서 test는 에러가 나는데 확인좀 해주세요.
보고 계신 화면 전체를 캡처해 주

시면, 튜터님들이 빠르게 상황을 이해할 수 있어요.
작성한 코드 및 에러 메세지
import openpyxl
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
# SMTP 서버 및 계정 정보 설정
smtp_server = 'smtp.gmail.com'
smtp_port = 587
smtp_username = 'leekstest@gmail.com' # 보내는 이메일 계정
smtp_password = 'gyat jggi mmcu sewv' # 이메일 계정의 앱 패스워드 또는 비밀번호
# 메일 제목 및 내용
mail_subject = 'salemale VIP 선정 및 감사 메일'
# Excel 파일에서 고객 데이터 추출
workbook = openpyxl.load_workbook('/customer_data.xlsx')
worksheet = workbook['test_name_email']
# SMTP 연결 및 메일 전송
with smtplib.SMTP(smtp_server, smtp_port) as smtp:
smtp.starttls()
smtp.login(smtp_username, smtp_password)
# 각 고객에게 메일 보내기
for row in worksheet.iter_rows(min_row=2, values_only=True):
name, email, _, _, _, total_purchase_amount = row
# 구매 금액 조건 확인
if total_purchase_amount >= 500000:
# 메일 메시지 구성
if total_purchase_amount >= 1000000:
mail_body = f'''안녕하세요, {name}님!
salemale을 이용해 주셔서 감사합니다! 올해 총 {total_purchase_amount:,}원 이상 구매하신 고객님께는 salemale VIP로 선정되어 5개의 쿠폰을 선물로 드립니다. 쿠폰은 1년간 유효하며, 다음 결제 시 자동으로 적용됩니다.
또한, 100만원 이상 구매하신 고객님께는 더욱 특별한 상품을 준비했습니다. 꾸준히 많은 사랑 부탁드립니다.
감사합니다.
salemale 팀 드림'''
else:
mail_body = f'''안녕하세요, {name}님!
salemale을 이용해 주셔서 감사합니다! 올해 총 {total_purchase_amount:,}원 이상 구매하신 고객님께는 salemale VIP로 선정되어 5개의 쿠폰을 선물로 드립니다. 쿠폰은 1년간 유효하며, 다음 결제 시 자동으로 적용됩니다.
감사합니다.
salemale 팀 드림'''
# 이메일 메시지 생성
msg = MIMEMultipart()
msg['From'] = smtp_username
msg['To'] = email
msg['Subject'] = mail_subject
# 이메일 본문 추가
msg.attach(MIMEText(mail_body, 'plain'))
# 이메일 전송
smtp.sendmail(smtp_username, email, msg.as_string())
print("이메일 전송 완료")
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-3-20708d1e6299> in <cell line: 20>()
24 # 각 고객에게 메일 보내기
25 for row in worksheet.iter_rows(min_row=2, values_only=True):
---> 26 name, email, _, _, _, total_purchase_amount = row
27
28 # 구매 금액 조건 확인
ValueError: not enough values to unpack (expected 6, got 2)
오류 발생 시, 작성한 코드 전체와 에러 메시지를 첨부해 주세요.
Tip 1) </> 아이콘을 눌러 코드박스를 만들어 보세요.
Tip 2) Ctrl+A(맥의 경우 Command+A) 단축키로 코드를 한 번에 선택할 수 있어요!
