νμ΄μ¬μΌλ‘ λ§€μΆ λ³΄κ³ μλ₯Ό λΆμνκ³ μ΄λ©μΌλ‘ λ°μ‘νκΈ°
μ΄λ² μμ
μμλ μ΄μ μμ
μμ μ μν κ³ κ°λ³ λ§€μΆ λ°μ΄ν°
λ°μ΄ν°νλ μμ λΆμν ν, ν΄λΉ λ°μ΄ν°λ₯Ό κΈ°λ°μΌλ‘ λ§μΆ€ν λ³΄κ³ μ
λ₯Ό λ§λ€μ΄ μ΄λ©μΌμ λ°μ‘νλ νλ‘κ·Έλ¨μ ꡬνν΄ λ³΄κ² μ΅λλ€.
SMPT μ°κ²° ꡬμ±νκΈ°
λ¨Όμ μ΄λ©μΌ μ μ‘μ μν SMTP μλ²
μ ν¬νΈ
, κ·Έλ¦¬κ³ μ΄λ©μΌ μ£Όμ
μ λΉλ°λ²νΈ
λ₯Ό μ€μ ν©λλ€.
# SMTP μλ² μ€μ smtp_server = "smtp.gmail.com" smtp_port = 587 sender_email = "your_email@gmail.com" password = "your_email_password" # SMTP μλ²μ μ°κ²° server = smtplib.SMTP(smtp_server, smtp_port) server.starttls() # TLS(Transport Layer Security) μνΈν μμ server.login(sender_email, password)
-
smtplib.SMTP()
: SMTP μλ²μ ν¬νΈλ₯Ό μ€μ ν©λλ€. μ½λ μμμμλ μμλ‘ Gmailμ μ¬μ©νμ§λ§, μ¬μ©νλ μ΄λ©μΌ μ 곡μμ μ€μ μ λ°λΌ κ°μ λ€λ₯΄κ² μ€μ ν μ μμ΅λλ€. -
starttls()
: μλ²μμ ν΅μ μ μνΈνν©λλ€. -
login()
: μ΄λ©μΌ κ³μ μΌλ‘ λ‘κ·ΈμΈν©λλ€.
μ΄λ©μΌ λ³Έλ¬Έ μμ±νκΈ°
μ΄μ κ³ κ°λ³λ‘ λ§μΆ€ν λ§€μΆ λ³΄κ³ μλ₯Ό ν μ€νΈλ‘ ꡬμ±ν ν, μ΄λ©μΌ λ³Έλ¬ΈμΌλ‘ μ¬μ©ν μ μλλ‘ ν©λλ€.
μ΄μ μ μμ±νλ λ§€μΆ λ°μ΄ν°λ₯Ό νμ©ν΄ κ³ κ°λ³λ‘ μ΄λ©μΌμ ꡬμ±ν©λλ€.
def create_email_body(customer_name, monthly_sales): body = f"μλ νμΈμ, {customer_name}λ!\n\n" body += "λ€μμ κ·νμ μ΅κ·Ό 3κ°μκ° λ§€μΆ μμ½μ λλ€:\n\n" for _, row in monthly_sales.iterrows(): body += f"{row['λ μ']}μ 맀μΆ: {row['λ§€μΆ κΈμ‘']}μ\n" body += "\nκ°μ¬ν©λλ€.\n" return body
μ΄ ν¨μλ κ³ κ°μ μ΄λ¦κ³Ό λ§€μΆ λ°μ΄ν°λ₯Ό λ°μ μ΄λ©μΌ λ³Έλ¬Έμ λ§λλλ€.
iterrows()λ₯Ό μ¬μ©ν΄ κ° κ³ κ°μ μλ³ λ§€μΆ λ°μ΄ν°λ₯Ό λ°λ³΅νλ©° λ³Έλ¬Έμ μμ±ν©λλ€.
μ΄λ©μΌ λ°μ‘νκΈ°
μ΄μ λ³Έλ¬Έμ μμ±νμΌλ, κ° κ³ κ°μκ² λ§μΆ€ν μ΄λ©μΌμ λ°μ‘νλ λ°©λ²μ μμλ³΄κ² μ΅λλ€.
μλ μ½λλ MIMETextλ₯Ό μ΄μ©ν΄ μ΄λ©μΌ λ©μμ§λ₯Ό μμ±νκ³ , SMTP μλ²λ₯Ό ν΅ν΄ λ°μ‘ν©λλ€.
from email.mime.text import MIMEText # κ³ κ°λ³λ‘ μ΄λ©μΌ λ°μ‘ for customer_id, group in monthly_sales.groupby('κ³ κ° ID'): customer_name = group['κ³ κ° μ΄λ¦'].iloc[0] recipient_email = "customer_email@example.com" # κ³ κ° μ΄λ©μΌ μ£Όμ email_body = create_email_body(customer_name, group) # μ΄λ©μΌ λ©μμ§ μμ± msg = MIMEText(email_body) msg['Subject'] = f"{customer_name}λμ μκ° λ§€μΆ λ³΄κ³ μ" msg['From'] = sender_email msg['To'] = recipient_email # μ΄λ©μΌ λ°μ‘ server.sendmail(sender_email, recipient_email, msg.as_string()) print(f"{customer_name}λμκ² μ΄λ©μΌ λ°μ‘ μλ£!")
-
MIMEText()
: μ΄λ©μΌμ λ³Έλ¬Έμ μμ±ν©λλ€. μ΄λ λ³Έλ¬Έμ create_email_body() ν¨μμμ λ§λ λ§μΆ€ν ν μ€νΈλ₯Ό μ¬μ©ν©λλ€. -
sendmail()
: μμ±ν μ΄λ©μΌμ κ³ κ°μκ² μ μ‘ν©λλ€. -
msg['Subject']
: μ΄λ©μΌ μ λͺ©μ μ€μ ν©λλ€.
μ΄ μ½λλ₯Ό ν΅ν΄ κ° κ³ κ°μκ² λ§μΆ€ν λ§€μΆ λ³΄κ³ μλ₯Ό μ΄λ©μΌλ‘ μλ λ°μ‘ν μ μμ΅λλ€.
λ§λ¬΄λ¦¬ μμ
μ΄μ λͺ¨λ μ΄λ©μΌμ λ°μ‘νμΌλ, μλ²μμ μ°κ²°μ μ’ λ£νλ μμ μ΄ νμν©λλ€.
μλμ κ°μ΄ quit()
λ₯Ό νΈμΆνμ¬ SMTP μλ²μμ μ°κ²°μ μ’
λ£ν©λλ€.
# SMTP μλ² μ°κ²° μ’ λ£ server.quit()
Guidelines
AI Tutor
Publish
Design
Upload
Notes
Favorites
Help
Code Editor
Execution Result
Output
The document is empty.
Try running the code.