واجهة برمجة تطبيقات قوية للبحث عن منتجات Amazon واسترجاع تفاصيلها مع دعم التصفية حسب السعر، العلامة التجارية، التقييم والمزيد.
- 🔍 بحث متقدم حسب السعر، التقييم، Amazon Choice، Best Seller، والماركة
- 🌍 دعم لعدة نطاقات (com, ae, sa, eg)
- ⚡ أداء سريع مع تخزين مؤقت للنتائج
- 🔒 حماية بمفتاح API
- 📄 توثيق شامل باستخدام OpenAPI 3.0
git clone https://github.com/yourrepo/amazon-scraper-api.git
cd amazon-scraper-api
npm installcp .env.example .envقم بتعديل القيم حسب الإعدادات الخاصة بك:
PORT=3000
NODE_ENV=development
API_KEY=your_api_key_here
API_TIMEOUT=5000
npm run devGET /api/search/laptop?minPrice=100&maxPrice=1000&brand=HP&amazonChoice=true
GET /api/products/B08N5WRWNW
استرجاع تفاصيل المنتج عبر رقم ASIN.
المعاملات:
asin(Path): رقم تعريف المنتج في أمازون (Amazon Standard Identification Number)
الردود:
200: تفاصيل المنتج400: ASIN غير صالح404: لم يتم العثور على المنتج500: خطأ في الخادم
البحث عن المنتجات باستخدام كلمة مفتاحية.
المعاملات:
keyword(Path): الكلمة المفتاحيةdomain(Query): نطاق أمازون (مثل com، sa، ae) (افتراضي: com)minPrice/maxPrice: السعر الأدنى والأعلى (افتراضي: 0 - 100000)rating: الحد الأدنى للتقييم (افتراضي: 0)prime: تصفية حسب Prime (true/false)brand: اسم الماركةamazonChoice: فقط منتجات Amazon Choice (true/false)bestSeller: فقط منتجات Best Seller (true/false)onsale: المنتجات المخفضة فقط (true/false)minDiscount: أقل نسبة خصم (افتراضي: 0)
الردود:
200: قائمة بالمنتجات المطابقة400: طلب غير صالح404: لا توجد نتائج500: خطأ داخلي
{
"name": "Product Name",
"price": 199.99,
"original_price": 249.99,
"discountPercentage": 20.0,
"isOnSale": true
}.
├── config/ إعدادات التطبيق
├── controllers/ منطق التحكم (product/search)
├── routes/ المسارات
├── utils/ أدوات التحقق ومعالجة الأخطاء
├── app.js الملف الرئيسي لتشغيل Express
└── openAPI.yaml التوثيق باستخدام Swagger
تم توثيق كافة المسارات والمعاملات في ملف openAPI.yaml
يمكن عرض التوثيق من خلال Swagger UI.
- 🩺 ESLint لتنسيق الكود
- ✅ اختبارات لكل ميزة جديدة
- 📆 نمط التسمية:
- المتغيرات:
camelCase - الثوابت:
UPPER_CASE
- المتغيرات:
يرجى تضمين المعلومات التالية:
## الوصف
أدخل وصفًا مختصرًا للمشكلة
## خطوات إعادة الإنتاج
1. ...
2. ...
مرحبًا بأي مساهمة!
افتح Pull Request أو Issue لتحسين المشروع ✨