بنية الخدمات المعيارية لفهرسة عناوين URL وبحثها من خلال محتوىها باستخدام CouchDB+Lucene باعتباره البحث.
ملاحظة: لا يزال هذا المشروع تحت التطوير الثقيل ، يرجى توقع بعض WIP!
ملاحظة: (مطلوب Docker و Docker-Corms)
// Build docker containers (1st time)
docker-compose build
// Launch all required services
# [PRODUCTION]
docker-compose up
# [DEVELOPMENT]
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up
// Open UI
open http://localhost:8080
ملاحظة: للحصول على تشغيل إعادة تعيين بيانات CouchDB الكاملة (تحذير ، سيتم محو جميع البيانات):
docker-compose rm && rm DatabaseInit/dbinitstatus/.dbinitdone
ملاحظة: (مطلوب Docker و Docker-Corms)
// Test GetImageFromURL
open http://localhost:3000/?url=www.botdream.com&width=1024&height=900
// Test GetContentFromURL
curl http://localhost:6000/?url=www.botdream.com
// Open CouchDB UI
open http://localhost:5984/_utils/database.html?searchengine/_all_docs
// Test CouchDB+Lucene search
curl -X GET --silent http://localhost:5984/_fti/local/searchengine/_design/search/by_content?q=brilliant&include_docs=true | jq .
//DBProxy service
[POST] curl -d 'url=http://www.botdream.com' http://localhost:8000/url
[DELETE] curl -X DELETE http://localhost:8000/remove/http-botdream-com-botdream-com-botdream-com%2F2017-04-21T23%3A11%3A04.910Z | jq .
[GET] curl http://localhost:8000/search/botdream | jq .
// shutdown services
docker-compose stop
OR
CTRL+C in the original terminal
// clean services data (reset containers)
docker-compose rm
// when changing source code you should rebuild docker images, use this generic command to build all and ignore cache (will take some time, forces to rebuild all images from scratch)
docker-compose build --no-cache
تودو:
CouchDB DATABASE PRITILIZER.
لاختبار الخدمة السريعة قم بتشغيل هذه الأوامر:
cd DatabaseInit
./docker_build.sh
./docker_run.sh
رد فعل WebApp UI.
لاختبار الخدمة السريعة قم بتشغيل هذه الأوامر:
cd UI
./docker_build.sh
./docker_run.sh
open http://localhost:8080
خدمة ويب لقطة شاشة بسيطة مدعومة بواسطة Express و PhantomJs. متشوق من لقطة شاشة.
الوثائق الأصلية جاذبية هنا
لاختبار الخدمة السريعة قم بتشغيل هذه الأوامر:
cd GetImageFromURL
./docker_build.sh
./docker_run.sh
open http://localhost:3000/?url=www.botdream.com&width=1024&height=900
// or with clipping params
open http://localhost:3000/?url=www.botdream.com&width=1024&height=900&clipRect=%7B%22top%22%3A0%2C%22left%22%3A0%2C%22width%22%3A1024%2C%22height%22%3A800%7D
curl http://localhost:3000/?url=www.botdream.com&width=1024&height=900 > botdream.png
curl --silent http://localhost:3000/?url=www.botdream.com&width=1024&height=900 | imgcat
محتوى بسيط من خدمة الويب التي تعمل على شبكة الإنترنت مدعومة بواسطة Express و Cheerio.js
لاختبار الخدمة السريعة قم بتشغيل هذه الأوامر:
cd GetContentFromURL
./docker_build.sh
./docker_run.sh
curl http://localhost:6000/?url=www.botdream.com
قم بإنشاء قاعدة بيانات وبعض المستندات وبعد ذلك يمكنك البدء في إعداد الفهارس والاستعلام كما هو موضح في Couchdb-Lucene ReadMe.
لاختبار الخدمة السريعة قم بتشغيل هذه الأوامر:
cd CouchDBLucene
docker-compose up
./database_init.sh
open http://localhost:5984/_utils/
curl -X GET --silent http://localhost:5984/_fti/local/searchengine/_design/search/by_content?q=nirvana&include_docs=true | jq .
curl -X GET --silent http://localhost:5984/_fti/local/searchengine/_design/search/by_content?q=einstein&include_docs=true | jq .
curl -X GET --silent http://localhost:5984/_fti/local/searchengine/_design/search/by_content?q=brilliant&include_docs=true | jq .
// Clear CouchDB data
docker-compose rm
مزيد من المعلومات حول بحث Couchdb-Lucene Fulltext هنا: Couchdblucene-FullText-Search
أداة بسيطة تم إجراؤها في GO GOOGE GOOGLE BOODMARK تم تصدير ملف HTML إلى CouchDB-Lucene.
لاختبار الخدمة السريعة قم بتشغيل هذه الأوامر:
cd SendFavoritesToCouchDB
# export Chrome Bookmark file to ./bookmarks_sample.html
# ./build.sh # in case you need to change the sourcecode and compile the tool
# Launch CouchDB-Lucene service and initialize database
# Launch GetContentFromURL service
./SendFavoritesToCouchDB ./bookmarks_sample.html
واجهة مستخدم تجريبية باستخدام Vue.js ، خادم HTTP الخاص بحزم الويب الأساسي ، لا يتم تنفيذها بعد تنفيذها ، لا تتوفر حاوية Docker!
لاختبار الخدمة السريعة قم بتشغيل هذه الأوامر:
cd UI
npm install
npm start
open http://localhost:8080
خدمة عنوان URL إلى المؤشر البسيط. أرسل اللحم ، احصل على ساج.
يأخذ هذا عنوان URL المحدد ، ويمرره من خلال getContentFromurl ، ثم يدفعه إلى قاعدة بيانات searchengine CouchDB حيث يقوم Couchdb-lucene بفهرسة المستندات.
curl -d 'url = http: //www.botdream.com' http: // localhost: 8000/url
ثم عندما يتم ذلك:
curl -X GET --silent http://localhost:5984/_fti/local/searchengine/_design/search/by_content?q=botdream&include_docs=true | jq .
ملاحظة: محرك الخدمة الآن فهرسة حسب العنوان:
curl -X GET --silent http://localhost:5984/_fti/local/searchengine/_design/search/by_title?q=botdream&include_docs=true | jq .
أيضًا: تقوم DBPROXY الآن بتنفيذ نقطة نهاية البحث (هذا يتجنب واجهة المستخدم للمطالبة بالبيانات مباشرة إلى CouchDB ، وأيضًا في المستقبل ، سيكون من الممكن استخدام محرك DB آخر وتجريده مع هذه الخدمة => النظر في Elasticsearch)
curl -X GET --silent http://localhost:8000/search/botdream | jq .