قمت بتصميم وتطوير محرك بحث متكامل باستخدام تقنيات Python + Flask + PostgreSQL، مع دمج Web Crawler متعدد الخيوط لجمع البيانات من المواقع.
المكونات الرئيسية:
Web Crawler:
مكتوب بلغة Python.
يستخدم Multithreading لتسريع عملية جمع البيانات من مئات الروابط.
استخراج العناوين، المحتوى، والروابط الجديدة للتوسع في الفهرسة.
قاعدة البيانات (PostgreSQL/SQLite في النسخة الأولى):
تخزين الصفحات التي تم جمعها.
تخزين الكلمات المفهرسة مع مواقعها داخل النصوص.
تصميم جداول مرنة تدعم عمليات البحث السريع.
الفهرسة (Indexing):
تحليل المحتوى النصي للصفحات.
تقسيم النصوص إلى كلمات (Tokenization).
تخزين تكرار الكلمات ومواقعها لتحسين النتائج.
واجهة البحث (Flask App):
صفحة بحث شبيهة بـ Google بسيطة وسهلة الاستخدام.
المستخدم يكتب الكلمة أو الجملة → النظام يسترجع الصفحات المرتبطة.
عرض النتائج مرتبة حسب الصلة (Relevance).
الأهداف والإنجازات:
بناء نظام شبيه بمحركات البحث الكبيرة لكن بموارد محدودة.
تعلمت من خلاله مفاهيم: Web Crawling – Indexing – Information Retrieval – Databases – Flask Web Development.
يعتبر نواة لتطوير محرك بحث أوسع في المستقبل.