مقدمة حول سير العمل
Workflow لاستخراج جداول البيانات والإحصاءات المُضمّنة في تقارير PDF من ReliefWeb وUNHCR وUNICEF وتحويلها إلى CSV قابل للتحليل.
الهدف من سير العمل
تحويل بيانات المنشورات الإنسانية من PDF غير قابل للبحث إلى ملفات قابلة للاستيراد إلى أدوات التحليل.
الأدوات والتقنيات المستخدمة
تم استخدام الأدوات التالية: n8n و Ollama و WordPress
تفاصيل تنفيذ سير العمل
- مستوى الصعوبة: advanced
- الوقت المتوقع للإعداد: 4–8 ساعات
- محفز التشغيل (Trigger): manual أو webhook عند نشر تقرير جديد على ReliefWeb
خطوات العمل (الآلية)
- إعداد n8n مع Python execution support (يحتاج Node.js + Python في نفس البيئة، يفضّل Docker compose).
- تثبيت pdfplumber أو tabula-py في بيئة Python.
- إنشاء workflow في n8n: HTTP node لجلب الـ PDF (من URL أو local).
- Execute Command node لتشغيل سكربت Python يستخرج الجداول.
- Code node لتنظيف البيانات (تحويل الأرقام، توحيد التواريخ).
- HTTP Request إلى Ollama API لتطبيع أسماء الكيانات (الدول، المنظمات).
- Write Binary File node لحفظ CSV.
- WordPress REST API node لنشر صفحة ‘بيانات’ تلقائياً (اختياري).
وصف مفصل
الباحثون والصحفيون في المجال الإنساني يعرفون المشكلة: تقارير غنية بالأرقام، لكن الأرقام محبوسة في PDF. النسخ اليدوي يستغرق ساعات وعرضة لأخطاء. هذا الـ workflow يستخدم n8n لإدارة خط المعالجة: تحميل PDF (محلياً أو من URL)، تمريره عبر pdfplumber أو tabula لاستخراج الجداول، ثم تمريرها عبر Ollama (أو OpenAI/Claude) لتنظيف وتطبيع البيانات (تحويل ‘12,345’ إلى 12345، توحيد أسماء الدول، إلخ). تحذير مهم: استخراج الجداول من PDF عملية عرضة للأخطاء بطبيعتها. التقارير ذات الـ layouts المعقّدة (multi-column، nested tables، headers مدمجة) تعطي نتائج ضعيفة. ينبغي تطبيق هذا الـ workflow بحذر: – اختبره على 5 تقارير معروفة الجواب أولاً – قسّ معدل الدقة – لا تنشر تحليلات تعتمد على البيانات المستخرجة دون مراجعة عشوائية بنسبة 10–20% البديل لبعض السياقات: بعض وكالات UN تُتيح APIs (UNHCR Data Portal مثلاً). استخدامها أكثر موثوقية من استخراج PDF.