
أداة 2smo لاستخراج البيانات
أداة لاستخراج بيانات المستخدمين والمدفوعات وإثرائها وتصديرها إلى ملفات Excel لصالح عميل.
تفاصيل المشروع
جامع بيانات 2smo أداة طُورت لعميل لجمع سجلات من مصادر API مهيأة. تسترجع سجلات المستخدمين والمدفوعات، وتضيف بيانات الموقع والرسوم عند توافرها، ثم تنتج ملفات Excel للمراجعة. تتيح لوحة Express للمشغل ضبط المصادر وتشغيل الجمع أو إيقافه.
المشكلة
تصل السجلات من واجهات متعددة الصفحات، وتحتاج إلى المقارنة والربط بين المصادر. وقد تتطلب المدفوعات تفاصيل الرسوم من بوابة الدفع، بينما تحتاج عناوين IP إلى وصف جغرافي. لا يلزم الاحتفاظ بكل الصفحات في الذاكرة حتى نهاية العملية. يحفظ المشروع البيانات تدريجيًا في SQLite، ثم يعالجها ويصدر الجداول المرتبطة.
الميزات الرئيسية
- جمع المستخدمين والمدفوعات من صفحات API للمصادر المفعلة.
- بدء عملية جمع عامة أو خاصة بمصدر واحد وإيقافها من لوحة التحكم.
- عرض التقدم والسجلات مباشرة في المتصفح عبر Socket.IO.
- حفظ السجلات في SQLite عند وصول كل صفحة.
- إضافة مواقع المستخدمين من قاعدة MaxMind محلية مع تخزين نتائج البحث مؤقتًا.
- طلب بيانات رسوم المدفوعات من Stripe أو MyFatoorah عند تهيئتهما.
- إزالة تكرار المستخدمين وربط سجلاتهم بالمدفوعات قبل التصدير.
- إنشاء ملفات Excel بأوراق للمصادر وأوراق للبيانات المدمجة.
- تشغيل الجمع المجدول باستخدام node-cron.
البنية التقنية
يقرأ خط معالجة Node.js إعدادات المصادر، ويطلب الصفحات عبر Axios، ثم يمررها إلى SQLite. تقرأ طبقة المعالجة المستخدمين والمدفوعات المحفوظين، وتضيف بيانات الموقع والبوابة المتاحة، ثم ترسل صفوف التصدير إلى SheetJS. يقدم Express وEJS صفحات الدخول ولوحة التشغيل والبيانات والإعدادات والسجلات. ينقل Socket.IO تحديثات التقدم، ويبدأ المجدول التشغيل بحسب الإعدادات. ويمكن حفظ مفاتيح API للمصادر والبوابات في جدول أسرار SQLite بعد تشفيرها باستخدام AES-256-GCM.
أبرز الجوانب الهندسية
- تصل إشارات AbortController إلى Axios، فيمكن لإيقاف الجمع قطع طلب نشط.
- يفحص تحديد الموقع ذاكرة مؤقتة وجدول SQLite قبل قراءة ملف MaxMind المحلي.
- تزيل طبقة المعالجة تكرار المستخدمين، وتحذف البريد الإلكتروني وعنوان IP من صفوف التصدير.
- تحاول إضافة تفاصيل الرسوم من البوابة المهيأة، وتواصل العمل إذا تعذر مطابقة مرجع الدفع.
دوري
بنيت أداة جمع البيانات للعميل، وطبقة التخزين والإثراء، وإنتاج ملفات Excel، ولوحة تشغيلها الظاهرة في المستودع.
معرض الصور
No media available for this project.
آراء العملاء
آراء أشخاص استخدموا هذا المشروع أو شاركوا في تطويره.
شارك تجربتك مع هذا المشروع
مشاريع ذات صلة

منصة Leviro Jobs Hunter لفرص العمل الحر
خدمة من Leviro تبحث عن فرص العمل الحر، وتطابقها مع المهارات، وترسل النتائج عبر Telegram.

خدمة WhatsApp OTP
واجهة WhatsApp OTP للتحقق مع سجلات رموز مجزأة وطابور إرسال في SQLite ولوحة إدارة بالعربية والإنجليزية.

منصة خدمات WhatsApp المتعددة
منصة WhatsApp خاصة لرموز OTP وإشعارات الحالة والإرسال الجماعي، مع تحكم إداري وصلاحيات مفصلة.