اختيار الـ endpoint المناسب
تقدم FourA أربعة endpoints للطلبات، كل منها محسن لسيناريو مختلف. اختيار الـ endpoint المناسب يوفر الوقت، ويقلل التكلفة، ويحسن معدلات النجاح.
دليل القرار السريع
استخدم الـ auto endpoint عندما:
- تستهدف موقعا جديدا ولا تعرف بعد ما يحتاج إليه
- تريد استدعاء واحدا يتعامل مع الطلبات المباشرة، وتدوير الـ proxy، والرجوع للـ browser نيابة عنك
- تريد session يمكنك إعادتها بتكلفة منخفضة في الاستدعاء التالي لنفس الـ host
استخدم الـ single endpoint عندما:
- يتم تصيير الصفحة على الخادم (لا يتطلب JavaScript)
- تحتاج إلى السرعة القصوى (عادة أقل من 1 ثانية)
- تستهدف APIs أو صفحات HTML ثابتة من host تعرف مسبقا أنه يعمل
استخدم الـ browser endpoint عندما:
- تعتمد الصفحة على JavaScript لتصيير المحتوى
- يتم تحميل المحتوى بعد التحميل الأولي للصفحة
- تحتاج إلى DOM المصير بالكامل
استخدم الـ proxy endpoint عندما:
- يقوم الموقع المستهدف بحظر الـ requests بنشاط
- تحتاج إلى التدوير عبر عناوين IP متعددة
- المحاولات السابقة أرجعت 403 أو صفحات CAPTCHA
مقارنة الـ endpoints
Auto (POST /api/auto/)
الـ endpoint الخاص بالجلب الذكي. تمرر URL و (في الوضع المثالي) قاعدة validate، وتقوم FourA بتتبع تسلسل واعي بالتكلفة: فحص مباشر رخيص، ثم proxy مدور، ثم browser كامل. الدرجة الأولى التي ترجع response يطابق validate الخاص بك تفوز. في الاستدعاءات المتكررة لنفس الـ host، يتم إعادة تشغيل session دافئة، لذلك يكون الاستدعاء الثاني رخيصا.
curl -X POST https://eu.api.foura.ai/api/auto/ \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/product/42",
"validate": {"data": {"accept": ["Add to cart"]}}
}'
وقت الـ response النموذجي: 200ms (دافئ) إلى 30s+ (حل بارد على موقع صعب) الأفضل لـ: الأهداف الجديدة، المواقع ذات الحماية المختلطة، "أريد الصفحة فقط"
للحصول على جولة أعمق، راجع دليل الجلب الذكي (Smart Fetch).
Single (POST /api/single/)
الخيار الأسرع. يرسل HTTP request بخصائص شبكة واقعية تشبه الـ browser، دون تشغيل عملية browser.
curl -X POST https://eu.api.foura.ai/api/single/ \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"method": "GET", "url": "https://example.com/api/products"}'
وقت الـ response النموذجي: 200ms إلى 2s الأفضل لـ: الـ APIs، المواقع الإخبارية، المدونات، صفحات المنتجات الثابتة
Browser (POST /api/browser/)
يفتح الـ URL الخاص بك في مثيل متصفح Chrome. يتم تحميل الصفحة بالكامل، ويتم تنفيذ JavaScript، وتحصل على HTML المصير النهائي.
curl -X POST https://eu.api.foura.ai/api/browser/ \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/spa-app",
"timeout_ms": 15000,
"checkText": "data-table"
}'
وقت الـ response النموذجي: 2s إلى 10s الأفضل لـ: تطبيقات الصفحة الواحدة (SPAs)، المواقع ذات التحميل الكسول (lazy loading)، المحتوى المصير بواسطة JavaScript
Proxy (POST /api/proxy/)
يجمع بين الـ HTTP requests وتدوير الـ proxy التلقائي. إذا فشلت المحاولة الأولى أو تم حظرها، تعيد FourA المحاولة من خلال proxies مختلفة.
curl -X POST https://eu.api.foura.ai/api/proxy/ \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"maxTries": 5,
"request": {
"method": "GET",
"url": "https://example.com/pricing"
}
}'
وقت الـ response النموذجي: 1s إلى 5s الأفضل لـ: مراقبة أسعار التجارة الإلكترونية، تجميع السفر، المواقع التي تحتوي على اكتشاف الروبوتات
Auto مقابل Manual
متى يجب أن تدع auto يختار، ومتى يجب أن تستدعي Single، أو Proxy، أو Browser بنفسك؟
| اختيار auto | اختيار manual |
|---|---|
| لا تعرف ما يحتاجه الموقع بعد | تعرف بالضبط أي محرك يريده الهدف |
| تريد استدعاء واحدا يعمل وحسب | أنت تقوم بتحسين شكل الـ request لهدف معروف |
| لا تمانع في إعادة استخدام auto لـ session تعلمها | تريد تحكما كاملا في إعادة المحاولة لكل استدعاء، والمهلة، واختيار الـ proxy |
| أنت تدفع مقابل بضع ثوان من الفحص في الاستدعاء الأول | زمن الوصول في الاستدعاء الأول يهم أكثر من الاكتشاف |
ليس auto دائما الخيار الأرخص. إذا كنت تعرف بالفعل أن هدفا يعمل مع Single و unblocker قيد التشغيل، فإن استدعاء Single مباشرة يتخطى الفحص ويكلف 2 من الأرصدة. يكلف auto على نفس الهدف مهما تنفقه سلسلة الفحص الخاصة به.
متى تجمع بين الأساليب
تستفيد بعض مسارات العمل من استخدام endpoints متعددة:
- الاكتشاف باستخدام auto: مرر قاعدة
validateودع سلسلة الفحص تكتشف الدرجة التي يحتاجها الموقع. - إعادة التشغيل باستخدام single: خذ الـ
session.proxy، وsession.cookies، وsession.userAgentالتي أرجعها auto، ثم استدع Single معهم للصفحات اللاحقة على نفس الـ host. - الرجوع إلى browser: إذا بدأ single في الفشل، قم بالتبديل إلى تصيير الـ browser.
- إضافة proxy: إذا تم حظرك (403 / CAPTCHA) بدون auto، قم بتغليف الـ request الخاص بك في الـ proxy endpoint للتدوير التلقائي.
هذا النهج التدريجي يبقي التكلفة منخفضة مع الحفاظ على معدلات نجاح عالية.
نصائح الأداء
- مرر سلسلة فرعية
validate.data.acceptعلى الأهداف المحمية. بدونها، لا يستطيع auto التمييز بين الصفحة الحقيقية والصفحة البينية للتحدي. - استخدم الـ single endpoint بشكل افتراضي للـ hosts المعروفة بالعمل وقم بالترقية فقط عند الحاجة.
- قم بتعيين
checkTextفي الـ browser requests لتجنب انتظار المحتوى غير الضروري. - قم بتعيين
maxTriesفي الـ proxy requests للتحكم في سلوك إعادة المحاولة (الافتراضي هو 5، والحد الأقصى هو 90). - حافظ على بقاء
timeout_msمعقولا: من 10 إلى 15 ثانية لمعظم الصفحات، وأكثر من 30 ثانية لتشغيل auto البارد ضد المواقع المحمية.
الخطوات التالية
- الجلب الذكي (Auto): الغوص العميق في
/api/auto/ - API Endpoints: مرجع المعلمات الكامل
- كشط موقع ويب ديناميكي: دليل خطوة بخطوة لـ browser request
- البداية السريعة: أول request لك في 30 ثانية