برنامج للبحث عن فكونتاكتي متشابهة التفكير [المصدر المفتوح]

يوفر VK أدوات جيدة جدًا لاستهداف الإعلانات ، والتي تسمح لك بالعثور على أشخاص من الجنس المناسب والسن والحالة الاجتماعية والزواجية والاشتراك في مجموعات محددة ، وما إلى ذلك. هذه ليست سوى قمة جبل الجليد ، إذا كنت تتعمق في البيانات الضخمة المتاحة على الشبكات الاجتماعية ، يمكنك معرفة الشخص تقريبا أكثر مما يعرف عن نفسه.

في الوقت نفسه ، لا توجد عمليا أي آلية للعثور على أصدقاء جدد ، وهو أمر مثير للسخرية في سياق الشبكة الاجتماعية. من ناحية أخرى ، من المفهوم ، إذا كان شيئًا ما لا يدر دخلاً ، فهذا يعني أنه على الأرجح لن يتطور. للتعارف ، أطلقت VK التطبيق مؤخرًا ، ولكن ، كما أفهمه ، هذا هو في الواقع نسخة من Tinder ، ولا يسحب أي بيانات على الإطلاق من الملفات الشخصية ، حتى الموقف المألوف للتدخين أو الكحول - من الشبكة الاجتماعية هناك إذن فقط.

أصبح من المثير للاهتمام بالنسبة لنا كيفية إصلاح هذا الموقف بشكل واقعي باستخدام واجهة برمجة التطبيقات VK ، وإليك ما جاء منها:

شريط مماثل في شاشتك الرئيسية

كما كان؟


لذا ، بالنسبة للمبتدئين ، يجدر رسم الحالة الأولية. الإستراتيجية المناسبة الوحيدة التي تتبادر إلى الذهن هي العثور على مجتمع قريب منك من حيث مؤشرات الرؤية العالمية / الجمالية / الهوايات ، وفتح بحث عن المشتركين. أدخل بعض الفلاتر ، على سبيل المثال العمر ، ثم انظر فقط على التوالي.

لكن هذا الخيار له عيوب التالية:

  • العديد من الملفات الشخصية المهجورة والمغلقة
  • البحث عن طريق مجالات الحياة معطل
  • لا يوجد خيار متعدد في البحث ، أي موقف سلبي وسلبي بشكل حاد تجاه الكحول ، على سبيل المثال ، - لا يمكنك اختيار
  • يجب عليك التبديل باستمرار بين علامات تبويب المتصفح
  • من الضروري التقييم يدويًا في المكان الذي يكون فيه المستخدم في القائمة محل اهتمام الجمهور ، هل هو مهتم حقًا
  • من الضروري تقييم ما لا يزال المستخدم مشتركًا فيه يدويًا ، سواء كان هناك جمهور آخر يهمنا ، أو شيء غير مقبول.
  • لا يمكنك تمييز الملفات الشخصية التي شاهدتها إذا لم تشاهد الجميع دفعة واحدة.

لحسن الحظ ، كل هذا تقريبًا قابل للحل ، وبالنظر إلى 100 مليون مستخدم نشط شهريًا ، حتى الانطوائيون ذوي الأذواق المحددة للغاية لديهم فرصة للعثور على أشخاص متشابهين في التفكير.



كيف هذا؟


قررنا محاولة إنشاء مشروع قائم على تحليل الاشتراكات ، مع واجهة ملائمة وأدوات أتمتة. في الوضع التلقائي بالكامل ، تكون الخوارزمية شيء من هذا القبيل:

  1. يقوم المستخدم بتسجيل الدخول عبر VK
  2. قم بتنزيل قائمة اشتراكاته (أقل من مليون)
  3. نقوم بتقييم كل منهم وفقًا للموضع في القائمة.
  4. قم بتنزيل N مشتركين من كل مجموعة من مجموعاته (يعتمد N على مقدار الوقت الذي أشار إليه)
  5. نجد في قاعدة البيانات المستخدمين المشتركين في عدة مجموعات وحساب تصنيفهم
  6. بالنسبة للأشخاص الحاصلين على أعلى تصنيف ، قم بتنزيل قوائم الاشتراك الخاصة بهم للتأكد من أن المجموعات التي تم العثور عليها ليست في المركز 2048 لبناء اهتماماتهم العليا

بعد ذلك ، ينتقل البرنامج إلى الوضع اليدوي ، حيث يمكنك أيضًا تحديد المجموعات غير المرغوب فيها ، وتغيير الدرجات ، وإضافة المجموعات التي لم تشترك فيها ، ولكن الأشخاص المثيرون للاهتمام أيضًا - سيتم إعادة حساب كل شيء ، سيتم إعادة بناء الجزء العلوي. هناك أيضًا وضع كامل يمكن استخدامه لتحليل المجموعات الصغيرة الفردية. في ذلك ، يتم تكوين قاعدة البيانات حصريًا عن طريق الحصول على البيانات من كل مستخدم ، وليس مطلوبًا تنزيل جميع المجموعات في القائمة.




حول شفرة المصدر


قررنا فتح المصدر حتى يتمكن الجميع (الذين يعرفون C ++ ، huh) من التجربة حتى مع تلك المعلمات التي لم يتم إنشاؤها في الإعدادات. حسنًا ، لم يكن أحد قلقًا من أن يتم نقل صفحته إلى العبودية لسائقي الروبوتات ، وسيتم بيع البيانات على darknet.

يفتح بعض المطورين الرمز للتفاخر - انظر كيف يمكنني ذلك. ليست هذه هي القضية. تم تطوير المشروع بدون مواصفات فنية واضحة ، مع متطلبات متغيرة باستمرار ، ولا يمكن أن تكون هناك بنية جيدة هنا كفئة - حتى الأكثر مرونة ، في معظم الأحيان ، لا ينحني على الإطلاق حيث كان من المفترض أن. بعد أن يصبح المشروع نهائيًا ، وتصبح المتطلبات واضحة ، عادة ما يتعين علينا القيام بإعادة هيكلة على نطاق واسع جدًا ، ولكن في هذه الحالة قررنا تأجيله.

أولاً ، أصبح البرنامج ذا صلة بشكل خاص في ضوء الأحداث الأخيرة ، وتأجيل الإصدار لشهر آخر سيكون من الغباء. فجأة ، شخص ما في الحجر الصحي خاص بالوحدة ، يمكنك العثور على أصدقاء على الإنترنت.

ثانيًا ، من غير الواضح ما إذا كان أي شخص مهتمًا بهذا البرنامج على الإطلاق ، وإذا لم يكن كذلك ، فلا فائدة من إضاعة الوقت في تحسين التعليمات البرمجية ، لأن الدعم غير متوقع. لذلك بالنسبة للديون الفنية وقطع الزوايا لا تندفع كثيرًا ، نحن على علم بذلك.

كان من الضروري أيضًا تأجيل التحسينات الأخرى ، على سبيل المثال ، تسريع العمل من خلال إجراءات VK ، أو مع مراعاة وضع المجموعة في قائمة المستخدمين من أجل تقليل مساهمة المجموعات المنخفضة. كان الإفراج المبكر وزيادة الاستقرار أكثر أهمية.

متطلبات النظام


مراقب من 1366 × 768 ، يوصى بالدقة الكاملة. لن يكون SSD غير ضروري أيضًا.

لم يتم اختبار القواعد لأكثر من 5 ملايين ، بعد أن تبدأ 10 فرامل قوية بالتأكيد. يمكنك التبديل إلى نظام إدارة قواعد البيانات (DBMS) الأكثر قوة بسرعة إلى حد ما (تسمح الملخصات Qt) ، ولكن يبدو حتى الآن أنه غير عملي لأن عامة الملايين من الدولارات ليس لديها الكثير لتقوله عن المشتركين ، لذلك لا يمكن للعديد من الأشخاص أن يكونوا متخصصين.

مصادر هنا . ثنائيات لنظامي التشغيل Windows و Linux .

PS لدي أفكار حول كيفية تحسين VK للوضع من جانبها ، ولكن هذا موضوع لمقال منفصل.

PPS لدى العديد من ناشري تكنولوجيا المعلومات (بما في ذلك هبر) قوائم المشتركين مغلقة ، ولن تتمكن من أخذهم في الاعتبار.

All Articles