مشروع زاحف مشاركة السحابة بايدو
هناك العديد من المشاريع مفتوحة المصدر على جيثب، ولكنها توفر فقط جزء الزاحف. يضيف هذا المشروع أيضًا وحدات لحفظ البيانات وإنشاء فهارس Elasticsearch بناءً على الزاحف، ويمكن استخدامه في بيئات الإنتاج الفعلية، لكن وحدة الويب لا تزال كذلك المطلوبة
ثَبَّتَ
قم بتثبيت Node.js وpm2، ويتم استخدام العقدة لتشغيل برامج الزحف والفهرسة، ويتم استخدام PM2 لإدارة مهام العقدة.
يتم استخدام تثبيت mysql وmongodb لحفظ بيانات الزاحف، ويتم استخدام mongodb لحفظ البيانات المشتركة النهائية لـ Baidu Cloud.
gitclonehttps://github.com/callmelanmao/yunshare
cnpmi
يوصى باستخدام الأمر cnpm لتثبيت تبعيات npm، وهي أبسط طريقة للتثبيت
$npminstall-gcnpm--registry=https://registry.npm.taobao.org
يمكن العثور على المزيد من الأوامر لتثبيت cnpm على npm.taobao.org.
التهيئة
يتم حفظ بيانات الزاحف (قائمة عناوين URL بشكل أساسي) في قاعدة بيانات mysql. يستخدم Yunshare تكملة لتخطيط ORM. الملف المصدر موجود في src/models/index.js يمكنك إنشاء قاعدة بيانات يون يدويًا
createdatabaseyundedefaultcharsetutf8
قم بتغيير كلمة المرور وفقًا لاحتياجاتك. بعد الانتهاء من تكوين mysql، يمكنك تشغيل الأمر التالي
com.gulpbabel
nodedist/script/init.js
لاحظ أنه يجب عليك أولاً تشغيل gulpbabel لتجميع كود es6 في es5، ثم تشغيل البرنامج النصي للتهيئة لاستيراد البيانات الأولية. ملف البيانات موجود في data/hot.json، وهو من الصفحة http://yun.baidu .com/pcloud/friend/gethotuserlist?
ابدأ مشروعًا
يستخدم Yunshare PM2 لإدارة عمليات Nodejs. قم بتشغيل PM2startprocess.json لبدء جميع مهام الخلفية للتحقق مما إذا كانت المهام تعمل بشكل طبيعي، يمكنك استخدام الأمر PM2list.
ابدأ تشغيل فهرس Elasticsearch
تمت أيضًا كتابة برنامج فهرس elasticsearch. ملف التعيين موجود في data/mapping.json. يرجى التأكد من تثبيت إصدار elasticsearch5.0 قبل تشغيل برنامج الفهرس، الأمرpm2startdist/elastic.js.
عنوان Elasticsearch الافتراضي هو http://localhost:9200. إذا كنت بحاجة إلى تعديل هذا العنوان، فيمكنك تعديله في src/ElasticWorker.js بعد تعديل أي كود مصدر لـ js، تذكر تشغيل gulpbabel وإعادة تشغيل مهمة PM2، وإلا لن يسري مفعول التعديل.
بعد إكمال تكوين Elasticsearch، يمكنك أيضًا إضافة مهمة مرنة في ملفprocess.json بحيث لا تحتاج إلى بدء برنامج الفهرسة بشكل منفصل.
الوثائق ذات الصلة
نموذج زاحف Nodejs بسيط وفعال
تجريبي