یه گل دادی به دلم برات رفت

یه گل دادی به دلم برات رفت! 💖

گل

گل

یه روز داشتم تو خیابون قدم میزدم یهو چشمم به یه گل فروشی افتاد. یه گل رز قرمزِ قشنگ با یه نوار آبیِ کوچیک دورش بود. اون لحظه یه فکری تو ذهنم جرقه زد. 💡

گل

"چطور میشه با یه گل یه نفر رو خوشحال کرد؟"

گل

یه لبخند روی صورتم اومد. همیشه یه گلِ قشنگ میتونه حالِ آدمو خوب کنه. اما این بار یه ایده ی دیگه تو ذهنم شکل گرفت. یه برنامه ی ساده که با یه گلِ مجازی لبخند رو لبِ یه نفر دیگه بنشونه!

گلِ مجازی با کد

اولین قدم انتخاب یه زبان برنامه نویسی بود. Python رو انتخاب کردم. Python به خاطر سادگی و انعطاف پذیری برای پروژه های کوچیکِ خلاقانه گزینه ی مناسبی بود.

مرحله اول: انتخاب کتابخانه

برای طراحیِ یه گلِ مجازی نیاز به یه کتابخانه ی گرافیکی داشتیم. Tkinter کتابخانه ی پیش فرضِ پایتون برای این کار بود. Tkinter با یه مجموعه از ابزارهای گرافیکی ساده و قابل فهم امکان طراحیِ رابط کاربری (UI) رو برای برنامه ها فراهم میکنه.

from tkinter import *

مرحله دوم: طراحی رابط کاربری

با استفاده از Tkinter یه پنجره ی ساده با یه دکمه ی "ارسال گل" طراحی کردم.

root = Tk()
root.title("گلِ مجازی")

button = Button(root, text="ارسال گل", command=send_flower)
button.pack(pady=20)

root.mainloop()

مرحله سوم: ایجاد گل مجازی

در این قسمت با استفاده از توابع گرافیکیِ Tkinter یه گلِ ساده طراحی کردم.

def send_flower():
    flower_window = Toplevel(root)
    flower_window.title("گلِ مجازی")

    canvas = Canvas(flower_window, width=200, height=200, bg="white")
    canvas.pack()

    # رسم گل
    canvas.create_oval(70, 70, 130, 130, fill="red") # گلبرگ
    canvas.create_oval(90, 90, 110, 110, fill="yellow") # مرکز گل

مرحله چهارم: ارسال گل مجازی

بعد از طراحیِ گل باید یه راهی برای ارسالِ این گلِ مجازی به دوستِمون پیدا میکردیم. با استفاده از کتابخانه ی requests در پایتون یه پیام به همراه یه عکس از گلِ مجازی با API ای که برای ارسالِ پیام انتخاب کردیم ارسال کردیم.

مراحلِ طراحیِ برنامه:

مرحله توضیحات
انتخاب زبان Python
انتخاب کتابخانه گرافیکی Tkinter
طراحی رابط کاربری با استفاده از Tkinter پنجره ای با یه دکمه ی "ارسال گل" طراحی شد.
ایجاد گل مجازی با استفاده از توابع گرافیکی Tkinter یه گلِ ساده رسم شد.
ارسال گل مجازی با استفاده از کتابخانه ی requests یه پیام با عکسِ گلِ مجازی به یه API ارسال شد.

گلِ مجازی و API

برای ارسالِ یه پیام با گلِ مجازی به یه API نیاز داریم. API (Application Programming Interface) یه رابطِ برنامه نویسیه که به دو برنامه اجازه میده با هم ارتباط برقرار کنند.

انتخاب API

چندین API برای ارسال پیام وجود داره. Twilio SendGrid و Nexmo از جمله API هایی هستند که برای ارسال SMS و email به کار میرن.

ثبت نام و دریافت API Key

برای استفاده از API ها اول باید در سایتِ API مورد نظر ثبت نام کنیم. بعد از ثبت نام یه API Key دریافت میکنیم که برای احراز هویتِ برنامه مون به کار میره.

استفاده از API Key

با API Key میتونیم با استفاده از requests و API انتخاب شده پیام رو ارسال کنیم.

import requests

def send_message(message, api_key):
    url = "https://api.twilio.com/2010-04-01/Accounts/<ACCOUNT_SID>/Messages.json"
    payload = {
        'From': '<YOUR_PHONE_NUMBER>',
        'To': '<RECEIVER_PHONE_NUMBER>',
        'Body': message
    }
    headers = {
        'Authorization': 'Basic ' + api_key
    }
    response = requests.post(url, data=payload, headers=headers)
    print(response.status_code)

توجه: و api_key رو با اطلاعات واقعیِ خودتون جایگزین کنید.

پیامِ گلِ مجازی

با API انتخاب شده میتونیم با گلِ مجازی یه پیامِ زیبا برای دوستِمون ارسال کنیم.

message = "یه گل دادی به دلم برات رفت! 💖  امیدوارم حالت خوب باشه."
send_message(message, api_key)

نتیجه گیری

با استفاده از زبان برنامه نویسیِ Python Tkinter و API های ارسالِ پیام میتونیم یه برنامه ی ساده و خلاقانه برای ارسال گلِ مجازی به دوستِمون طراحی کنیم. این برنامه با استفاده از کدِ ساده یه احساسِ قشنگِ هدیه دادنِ یه گلِ واقعی رو به دوستِمون انتقال میده.

پرسش و پاسخ

1. چه API هایی برای ارسال SMS مناسب هستن؟

Twilio SendGrid Nexmo MessageBird BulkSMS از جمله API هایی هستند که برای ارسال SMS به کار میرن.

2. چه کتابخانه های گرافیکی دیگه ای برای طراحی گلِ مجازی میتونیم استفاده کنیم؟

PyQt Kivy wxPython Pygame و Libavg از جمله کتابخانه های گرافیکیِ دیگه ای هستن که برای این کار میتونیم استفاده کنیم.

3. چطور میتونیم به برنامه مون امکان ارسال عکس با گلِ مجازی رو اضافه کنیم؟

برای ارسال عکس با گلِ مجازی میتونیم از کتابخانه ی Pillow در Python برای ساخت و ویرایش عکس استفاده کنیم. بعد از طراحیِ گلِ مجازی میتونیم یه عکس از اون رو با Pillow ایجاد کنیم و به API ارسال کنیم.

نمایش بیشتر
دکمه بازگشت به بالا