Skip to main content
POST https://api.acedata.cloud/webextrator/tasks تستخدم واجهة برمجة تطبيقات استعلام مهام WebExtrator لاستعلام نتائج مهام render / extract التاريخية. الاستخدامات الشائعة:
  • التحقق من envelope الكامل بعد انتهاء المهمة غير المتزامنة (بخلاف دفع callback_url أو الاستعلام النشط).
  • تدقيق ما تم تقديمه من قبل — تسجل سجلات المهام كل من request الأصلية و response النهائية.
  • إعادة تعبئة جماعية — سحب عدة سجلات مرة واحدة حسب id أو trace_id.
تحتفظ Redis بسجلات المهام لمدة 7 أيام. واجهة استعلام المهام مجانية (لا تُحتسب ضمن استخدام الائتمانات).

المصادقة

يمكن فقط استعلام المهام الموجودة تحت حساب AceDataCloud الخاص بك.

معلمات الطلب

جسم الطلب مقسم حسب action إلى نوعين من الإجراءات:

action: "retrieve" — استعلام فردي

يتم تمرير id أو trace_id كاختيار واحد.

action: "retrieve_batch" — استعلام جماعي

يتم تمرير ids أو trace_ids كاختيار واحد.

استجابة فردية

عند عدم العثور على شيء، يتم إرجاع { "task": null } (HTTP 200، وليس 404). توضح حقول التوقيت في كائن task كما يلي.
  • created_at، وقت إنشاء المهمة، طابع زمني Unix (ثوانٍ، عائم).
  • started_at، وقت بدء تنفيذ المهمة، طابع زمني Unix (ثوانٍ، عائم). يكون null عندما لا تبدأ المهمة بعد.
  • finished_at، وقت انتهاء المهمة، طابع زمني Unix (ثوانٍ، عائم). يكون null عندما لا تكتمل المهمة.
  • elapsed، الوقت المستغرق لتنفيذ المهمة، بوحدة الثواني (عائم، يحتفظ بـ 3 أرقام عشرية). يكون null عندما لا تكتمل المهمة.

استجابة جماعية

لن يتم الإبلاغ عن أخطاء للمعرفات غير الموجودة، بل ستفقد فقط من tasks.

أمثلة

استعلام فردي حسب task_id

استعلام فردي حسب trace_id

استعلام جماعي

بايثون (requests) — الاستعلام حتى الاكتمال

Node.js (fetch) — استعلام envelope الكامل بعد تلقي الاستدعاء

استجابة الخطأ

نصائح ومشاكل

  • يمكنك تخصيص trace_id إذا كنت ترغب في ذلك. في طلب render/extract الأصلي، قم بتحميل ?trace_id=… (QueryString)، واجعله متوافقًا مع معرف عملك (مثل معرف تشغيل سير العمل)، وبعد ذلك يمكنك استخدام معرف العمل للبحث عن المهام. إذا لم يتم تمريره، سيتم إنشاء UUID تلقائيًا بواسطة الخادم.
  • مدة الاحتفاظ 7 أيام. المهام الأقدم ستعيد task: null — إذا كنت بحاجة إلى أرشفة طويلة الأمد، يرجى تخزينها بنفسك.
  • استعلام المهام مجاني. يمكنك الاستعلام عن عدد المرات التي تريدها، فقد تم دفع الرسوم بالفعل عند استدعاء render/extract الأصلي.
  • يفضل استخدام الأسلوب غير المتزامن + رد الاتصال، بدلاً من الاستطلاع. إذا كان العمل يسمح بذلك، قم بتمرير callback_url في الطلب الأصلي، ليقوم النظام بدفع envelope إليك، مما يكون أكثر كفاءة من الاستطلاع كل 2 ثانية.