آموزش پایتون

آموزش‌های پایتونی

  • تجربیات
  • کتابخانه‌ها
  • چیز میز!
  • آموزش‌های پایتون

برنامه ارسال قیمت دلار با پایتون!

توی این آموزش می‌خوایم با پایتون یه اسکریپت بنویسیم که هر ۵ دقیقه قیمت دلار رو بررسی کنه و اگه با قیمت قبلی فرق داشت، به‌صورت خودکار قیمت جدید رو از طریق واتس‌اپ برامون بفرسته! این برنامه از یه پکیج استفاده می‌کنه که خودم نوشتمش به اسم gheymat و وظیفه‌ش اینه که قیمت دلار، طلا، ارزهای دیجیتال و... رو بگیره.

در کل سطح این آموزش متوسط هست، و برای کسایی که با پایتون آشنا هستن و می‌خوان پروژه‌های کاربردی واقعی بسازن خیلی مناسبه.

1. برای شروع ما نیاز به نصب کتابخانه‌هایی داریم که قراره باهاشون کار کنیم. یکیش پکیج خودم قیمت و یکیش pywhatkit پس توی ترمینال یا CMD بنویسید:

pip install gheymat pywhatkit

2. حالا یه فایل پایتون جدید بسازید (مثلا dollar_notifier.py) و کتابخانه‌های لازم رو ایمپورت کنید:

import time
from gheymat.currency import USD
import pywhatkit

3. ما می‌خوایم هر بار قیمت جدید رو بگیریم و با قیمت قبلی مقایسه کنیم. پس یه متغیر خالی به اسم last_price تعریف می‌کنیم:

last_price = None

4. حالا یه حلقه‌ی بی‌نهایت (while True) می‌نویسیم تا هر ۵ دقیقه برنامه قیمت رو بررسی کنه:

while True:

توجه: از اینجا به بعد تمام کدها رو داخل همین حلقه بنویسید.

5. پکیج gheymat یه تابع به اسم USD داره که قیمت لحظه‌ای دلار رو برمی‌گردونه. ما می‌تونیم تنظیم کنیم که قیمت به تومان باشه یا ریال، و فرمتش زیبا باشه یا نه. اینجا به شکل ساده ازش استفاده می‌کنیم:

current_price = USD(toman=True, beauty=False)

6. اگر اولین بار هست که برنامه اجرا میشه، فقط قیمت فعلی رو چاپ و ارسال می‌کنیم. اما اگر قیمت جدید با قبلی فرق داشته باشه، یعنی قیمت تغییر کرده، پس باید پیام جدید بفرستیم. فرستادن پیام هم با pywhatkit.sendwhatmsg_instantly هستش. اما پیشنهاد میکنم داکیومنت‌های pywhatkit رو هم بخونید چون چیزای بیشتری داره:

if last_price is None:
    message = f"قیمت دلار: {current_price}"
    print(message)
    pywhatkit.sendwhatmsg_instantly(
        phone_no="",
        message=message,
        wait_time=10
    )
    elif current_price != last_price:
        message = f"قیمت دلار تغییر کرد، قیمت جدید: {current_price}"
        print(message)
        pywhatkit.sendwhatmsg_instantly(
            phone_no="",
            message=message,
            wait_time=10
    )

نکته: به‌جای phone_no شماره خودتون رو بذارید به فرمت بین‌المللی مثل +989XXXXXXXXX.

7. در انتهای هر بار اجرای حلقه، باید قیمت فعلی رو به عنوان قیمت قبلی ذخیره کنیم تا دفعه بعد بتونیم مقایسه کنیم:

last_price = current_price

8. با تابع time.sleep() می‌تونیم تعیین کنیم که هر چند ثانیه یه بار برنامه دوباره بررسی کنه. اینجا هر ۵ دقیقه (۳۰۰ ثانیه) یک بار بررسی انجام میشه:

time.sleep(300)

حالا چند تا نکته، برای اینکه این برنامه کار بکنه، باید واتس‌اپ وب شما فعال باشه. اما اگر خواستین میتونید این کد رو تغییر بدین و کاری کنید که هر بار قیمت‌ها توی یه فایل CSV یا دیتابیس sqlite ذخیره بشه و بعد نمودار کشیده بشه و... امیدوارم براتون مفید بوده باشه.

آموزش پایتون مبتدی پروژه متوسط
آقای ربات جمعه نهم آبان ۱۴۰۴ ، ساعت 23:18

آمارگیر وبلاگ

قالب طراحی شده توسط وبلاگ :: webloog
آموزش پایتون آموزش‌های پایتونی
  • وبسایت آی‌کد آکادمی
  • اینستاگرام من
  • تلگرام من
  • آمار (مخصوص ادمین)
  • نوشتن پکیج مکمل برای nicegui
  • برنامه ارسال قیمت دلار با پایتون!
  • پایتون در حوزه زیست‌شناسی چه کاربردی داره؟
  • آیا هوش مصنوعی جای برنامه‌نویس رو میگیره؟
  • چطور پروژه کار کنیم؟!
  • ! روزِ صفر
  • برنامه هواشناسی با پایتون!
  • چرا باید برای آموزش هزینه کنیم؟!
  • سریعترین کد ادیتور دنیا - کد ادیتور Zed
  • در مورد بهترین کتاب آموزش پایتون
  • معرفی Faker – کتابخانه‌ای برای تولید داده‌های ساختگی
  • t-string در پایتون چیست؟
  • تجربیات
  • کتابخانه‌ها
  • آموزش‌های پایتون
  • چیز میز!
  • مشاوره
  • آبان ۱۴۰۴
  • مهر ۱۴۰۴
  • شهریور ۱۴۰۴
  • خرداد ۱۴۰۴
  • فروردین ۱۴۰۴
  • اسفند ۱۴۰۳
  • وبسایت آی‌کد آکادمی
  • کامل‌ترین دوره آموزشی پایتون