وونر
محرك بحث لعبة يبحث في الويب داخل المحطة الخاصة بك: P
سمات
- نفذت في C ++ 14.
- يزحف صفحات الويب بشكل تدريجي بدءًا من عناوين URL البذرة.
- توفي المستندات والاستعلام ، في محاولة لتوليد نتائج أكثر ملاءمة.
- يبني فهرس (خريطة التجزئة) للوثائق المحسورة.
- يتم تحديث المستندات المزروعة والفهرس بشكل دوري.
- الاستعلام التلقائي باستخدام TRIE ، استنادًا إلى استفسارات المطلوبة مؤخرًا.
- يحافظ على ترابطين ، للسماح بتحديث الفهرس والاستعلام عن simultaneuosly.
- يولد معظم النتائج ذات الصلة بالترتيب المرتبة على أساس الوسط التوافقي من Pagerank (للحصول على أهمية صفحة الويب) و OKAPI BM25 (للحصول على نتائج قائمة على الاستعلام).
- يوفر اقتراحات الاستعلام (فقط عندما لا يولد استعلام الإدخال أي نتائج) ، على أساس الكلمات غير الصحيحة والصحيح الشائعة. يصنفهم باستخدام خوارزمية N-Gram وتحرير DP لمقارنة سلسلتين.
خطوات لتشغيل
أمر التشغيل: wunner_search (تأكد من أن PWD الخاص بك هو دليل جذر المشروع)
أضف الخيار -f أو --fresh كما في wunner_search -f لبدء محرك البحث من جديد (أي الزحف والفهرسة مرة أخرى)
- بعد اكتمال الفهرسة ، ما عليك سوى كتابة استعلامك واضغط على Enter للبدء في البحث
- لاستخدام الإكمال التلقائي ، اضغط على Ctrl+G أثناء كتابة الاستعلام ثم اكتب رقم النتيجة المطلوبة لإكمال الاستعلام (لا يتمتع بصلة حتى يتم تطوير واجهة مستخدم الويب)
خطوات للبناء
- استنساخ (
git clone https://github.com/Anishka0107/Wunner.git ) أو قم بتنزيل هذا المستودع -
cd Wunner من حيث تم استنساخه/تنزيله
بناء (تم اختباره على Linux)
- المتطلبات: GCC (5.0 وما فوق) / Clang (3.4 وما فوق) ، Boost ، Wget
- خياران:
- يتطلب
ar :- تشغيل
chmod +x wunner_build.sh -
./wunner_build.sh clang++ ./wunner_build.sh
- يتطلب
cmake make :- قم بتشغيل
mkdir -p build && cd build && cmake .. && make -j$(nproc)
- في النهاية قم بتشغيل
wunner_search (إما مباشرة ./build/bin/wunner_search أو قم export PATH=$PATH:${PWD}/build/bin من قبل)
يستند Docker (لـ Linux/Windows/OS-X)
- قم بإعداد Docker على نظامك (تحتاج إلى امتيازات الجذر لأوامر Docker)
- بناء الصورة باستخدام
docker build -t wunner . - قم بتشغيل باستخدام
docker run -v ${PWD}:/tmp wunner wunner_search (Opdend Wunner_Search Options إذا لزم الأمر)
قائمة مراجعة TODO:
موارد
- عناوين URLS لبذور الزاحف ->
- كلمات خاطئة ->
- قائمة كلمات الإيقاف -> https://www.webconfs.com/stop-words.php