در این پروژه، از Scrapy برای استخراج قیمت لحظهای طلا و دلار از یک وبسایت ایرانی استفاده میکنیم. این خزنده بهصورت خودکار قیمتها را از صفحه موردنظر دریافت کرده و ذخیره میکند.
۱. نصب پیشنیازها
ابتدا Scrapy را نصب کنید. اگر قبلاً نصب نکردهاید، دستور زیر را در CMD اجرا کنید:
pip install scrapy
۲. ایجاد پروژه Scrapy
یک پروژه جدید با نام gold_dollar_scraper ایجاد کنید:
scrapy startproject gold_dollar_scraper
سپس وارد پوشه پروژه شوید:
cd gold_dollar_scraper
۳. ایجاد اسپایدر برای دریافت قیمتها
یک اسپایدر جدید با نام currency_spider ایجاد کنید:
scrapy genspider currency_spider example.com
🔹 نکته: در اینجا example.com یک نمونه است. شما باید آدرس واقعی یک وبسایت معتبر ایرانی که قیمتها را نمایش میدهد جایگزین کنید. مثلاً میتوانید از سایت tgju.org استفاده کنید.
فایل currency_spider.py در مسیر gold_dollar_scraper/spiders/
را باز کنید و کد زیر را جایگزین کنید:
import scrapy
class CurrencySpider(scrapy.Spider):
name = "currency_spider"
allowed_domains = ["tgju.org"] # نام دامنه وبسایت هدف
start_urls = ["https://www.tgju.org/"] # لینک صفحهای که قیمتها در آن قرار دارند
def parse(self, response):
yield {
"gold_price": response.css("td[data-market-row='geram18'] .nf::text").get(), # قیمت طلا
"dollar_price": response.css("td[data-market-row='price_dollar_rl'] .nf::text").get(), # قیمت دلار
}
۴. اجرای اسپایدر و دریافت قیمتها
برای اجرای این خزنده و دریافت دادهها، از دستور زیر استفاده کنید:
scrapy crawl currency_spider
همچنین میتوانید خروجی را در یک فایل JSON ذخیره کنید:
scrapy crawl currency_spider -o prices.json
۵. نتیجهگیری
✅ در این پروژه، قیمت دلار و طلا از یک وبسایت ایرانی استخراج شد.
✅ دادهها بهصورت خودکار از صفحه وب دریافت و در یک فایل JSON ذخیره شدند.
✅ میتوان این پروژه را گسترش داد تا دادهها را در پایگاه داده ذخیره کند یا بهصورت ریلتایم در داشبورد نمایش دهد.
📌 آیا این پروژه را اجرا کردید؟ اگر به مشکل برخوردید، سوالات خود را بپرسید! 🚀