POST https://api.acedata.cloud/webextrator/render
واجهة API عرض صفحات الويب WebExtrator هي خدمة لعرض صفحات الويب تعتمد على Chromium عديم الرأس. أعطِ عنوان URL،
وسيتم إرجاع HTML المعروض بالكامل (بما في ذلك المحتوى المُدرج عبر JS)، والنص الخالص، وعنوان الصفحة، وعنوان URL النهائي.
Render هي الواجهة الأساسية الأدنى مستوى في WebExtrator. إذا كنت تحتاج إلى نتائج استخراج مهيكلة (النص الرئيسي للمقالة،
أسعار المنتجات، مكونات الوصفات …)، فيُرجى استخدام
/webextrator/extract —— فهي تُشغّل مسار استخراج كاملًا ومُصنّف الأنواع على أساس العرض نفسه.
عملية التقديم
لاستخدام صفحة خدمة WebExtrator، انتقل أولًا إلى وحدة تحكم Ace Data Cloud للحصول على API Token الخاص بك، واحتفظ به للاستخدام لاحقًا.
إذا لم تقم بتسجيل الدخول أو التسجيل بعد، فسيتم تحويلك تلقائيًا إلى صفحة تسجيل الدخول لدعوتك إلى التسجيل وتسجيل الدخول، وستعود تلقائيًا إلى الصفحة الحالية بعد الإكمال.
يمكن لـ API Token واحد استدعاء جميع خدمات المنصة، ولا حاجة إلى التقديم بشكل منفصل لكل خدمة. سيُمنح رصيد مجاني عند أول تقديم، مما يتيح تجربة مجانية؛ وعند عدم كفاية الرصيد، يمكنك إعادة شحن الرصيد العام في وحدة التحكم.
📘 الوثائق الكاملة: صفحة خدمة WebExtrator →
المصادقة
تستخدم جميع واجهات WebExtrator مصادقة Bearer Token القياسية:معلمات الطلب
يستخدم عقد المنصة بشكل موحّد snake_case. تدعم خدمة العرض الداخلية camelCase، لكن يجب في الاستدعاءات الخارجية دائمًا استخدام snake_case.
بنية Cookie
الاستجابة المتزامنة
الاستجابة غير المتزامنة
عندasync=true (أو توفير callback_url) يتم الإرجاع فورًا (HTTP 200):
POST إلى callback_url (إذا تم تكوينه)، أو عبر
/webextrator/tasks للاستعلام النشط.
بنية رد الاتصال
تقوم المنصة بعملPOST لغلاف مطابق تمامًا للوضع المتزامن إلى callback_url،
بـ Content-Type: application/json. وتُعد أي استجابة 2xx تأكيدًا؛ أما 5xx فستتم
إعادة محاولتها بتراجع أُسّي لمدة تقارب 5 دقائق.
استجابة الخطأ
بنية الخطأ:
أمثلة
cURL
Python (requests)
Node.js (fetch)
غير متزامن + رد اتصال
{ "success": true, "task_id": "...", "trace_id": "...", "started_at": 1777717800.123 }؛
عند اكتمال المهمة، سترسل المنصة النتيجة الكاملة عبر POST إلى callback_url الخاص بك.
فرض تجاوز ذاكرة التخزين المؤقت
تلميحات ومطبات
- اختيار
wait_untilالصحيح مهم جدًا.networkidleهو الأكثر استقرارًا لكنه الأبطأ؛ أماdomcontentloadedفهو سريع لكنه قد يفوّت المحتوى المُدرج بشكل غير متزامن؛ وloadمناسب للصفحات الثابتة التقليدية. - يتجاهل مفتاح التخزين المؤقت
async. الطلبات المتزامنة وغير المتزامنة لنفس عنوان URL تصيب إدخال التخزين المؤقت نفسه، ولن يؤدي التبديل العشوائي إلى إبطاله. - يتجاهل مفتاح التخزين المؤقت
bypass_cacheوcache_ttl_seconds. هذان مفتاحا تشغيل، ولا يؤثران في محتوى الاستجابة. - يقوم
cookiesوheadersبتقسيم التخزين المؤقت إلى مجموعات. تخصيص هذين سيؤدي إلى فشل التطابق الأول للتركيبة نفسها. - غالبًا ما تتجاوز تطبيقات SPA الثقيلة 30 ثانية الافتراضية. يُنصح باستخدام
timeout: 60وwait_until: "domcontentloaded"وdelay: 4، ثم استخدامwait_for_selectorوغيرها لانتظار العناصر التي تهمك بالفعل. block_resourcesهو أسرع طريق لتقليل التأخير. يتم حجب الصور / الخطوط / الوسائط افتراضيًا؛ إذا كان الاستخراج لا يعتمد على تخطيط CSS، فإن إضافةstylesheetستجعله أسرع أيضًا.

