كيفية إنشاء تحليلات Instagram المجانية تلقائيًا باستخدام نص صفائح Google

بصفتك شخصًا نشطًا جدًا في جميع الأشياء في Instagram ، فإن تتبع الحسابات هو أحد تلك الأشياء التي تحتاج إلى القيام بها ، ولكن غالبًا ما لا ترغب في ذلك (أو لديك الوقت الكافي).

الجزء 1: كيف جاء البرنامج النصي ليكون

نظرًا لأنني "الطالب الذي يذاكر كثيرا" الحقيقي عندما يتعلق الأمر باستخدام Google Sheets و Excel (على محمل الجد ، كثيراً ما أقوم أحيانًا بإنشاء أوراق excel واستخدام الصيغ لحساب حتى أكثر الأشياء السهلة ، عبر استخدام آلة حاسبة) عثرت عليها مؤخرًا بسبب هذا المنشور بواسطة نيك بويس حول كيفية تتبع متابعي Instagram مع مرور الوقت باستخدام أوراق Google ، لقد كنت مستمتعًا على الفور.

لقد أوضح لنا منشور نيك كيفية إنشاء صفحات Google التي تتعقب شيئين أساسيين:

  • مقدار المتابعين لدى مستخدم instagram
  • كمية المشاركات التي يملكها مستخدم Instagram

كانت هذه بداية جيدة ، لكنها شعرت أن أسلوبه كان لديه الكثير من الإمكانات. بعد تطبيق طريقة Nick ، ​​عثرت على مستخدم متوسط ​​آخر كان له تأرجح في Instagram Analytics مع Google Sheets: Aidan Heron مع مشاركته: How to Track Instagram Metrics For Free

ايدان أضافت إمكانية جمع مقدار ما يتابعه المستخدم. جلب مجموع التتبع الخاص بنا إلى:

  • متابعون
  • يلي
  • المشاركات

لكن نشر إيدان هيرون أثار اهتمامًا ، كونه عنوان url حيث جمع البيانات من:

https://www.instagram.com/yourHandle/؟__a=1 (استبدل "yourHandle" باسم المستخدم الخاص بك لرؤية بعض الأشياء غير المرغوب فيها).

لم يعد يعمل __ a = 1 بعد تغيير أبريل إلى API / نقطة النهاية ، ولكن يمكنك فقط النقر بزر الماوس الأيمن فوق الصفحة على Instagram وعرض المصدر. البيانات لا تزال هناك!
يبدو وكأنه مجرد سلسلة عشوائية من النص ، ولكن هناك بعض الذهب هناك!

ما يبدو في البداية مجرد مجموعة عشوائية من النص ، ويعرض فعليًا بيانات من أحدث 12 مشاركة ، ويتضمن مقدار الإعجابات والتعليقات التي تلقاها منشور معين! هذا هو بالضبط ما كنت في عداد المفقودين من كل من وظائف نيك وإيدان ، وإمكانية قياس المشاركة التي تلقيتها!

بعد التجوال باستخدام نصوص برمجية إضافية (جنبًا إلى جنب مع صديقي Web Developer Friend ، Wim) وتمكّنت من الحصول على جميع البيانات منظمة وتمكّنت من تنسيقها بشكل صحيح لاستخدامها داخل أوراق Google.

الجزء 2: البيانات المتاحة

بعد بعض العبث حولك ، يمكنك الآن سحب البيانات التالية بكفاءة من Instagram إلى صفحات Google:

  • متابعون
  • يلي
  • المشاركات
  • إجمالي عدد الإعجابات (لآخر 12 مشاركة)
  • إجمالي عدد التعليقات (لآخر 12 مشاركة)

أضفت في البرمجة النصية الإضافية لحساب نسبة المشاركة ، وصيغة المكافأة لحساب المتابعين اليومية التي اكتسبها الفرد. باختصار: يحول هذا البرنامج النصي أوراق Google القديمة العادية العادية إلى أداة Instagram Analytics مجانية.

الجزء 3: هيا بنا إلى العمل!

الآن وقد غطينا كيف أصبح هذا البرنامج النصي ، وما هي البيانات التي يمكنه سحبها ، فقد حان الوقت للشروع في العمل وإنشاء ورقة Google!

  • افتح ورقة Google جديدة وأضف العناوين التالية إلى الأعمدة في الصف الأول (1):
    - تاريخ
    -متابعون
    - التالية
    - وسائل الإعلام
    - إجمالي الإعجابات
    - مجموع التعليقات
    - نسبة المشاركة
    - ربحت متابعين
يجب أن أبدو هكذا (سنصل إلى البيانات قريبًا ، وأعدك بذلك!)
  • بعد ذلك ، في القائمة ، افتح أدوات -> نص
  • نسخ البرنامج النصي وتغيير اثنين من المتغيرات:
    - اسم الورقة (تغيير القيم بين "" ، يجب أن يكون هذا اسم الورقة التي تريد استيراد البيانات إليها)
    - instagramAccountName (يجب أن يكون هذا هو المستخدم الذي تريد جمع البيانات له)
تغيير هذه القيم 2 بعد نسخ البرنامج النصي

تأكد من صحة اسم الورقة بنسبة 100٪ مع اسم علامة التبويب (في أسفل الورقة):

03–9–2019 التحديث: تم تحديث البرنامج النصي ليعكس التغييرات التي أجراها Instagram. بفضل JulienDev للحصول على التعليمات البرمجية المحدثة!
  • احفظ النص البرمجي (سيُطلب منك إدخال اسم).
  • افتح Run -> Run Function -> insertFollowerCount

بسبب قيود هذه الطريقة ، لا توجد بيانات تاريخية متاحة. ومع ذلك ، فإن استيراد كل شيء إلى Google Sheets سيؤدي تدريجياً إلى إنشاء البيانات التاريخية لك. فقط اعطه بعض الوقت! :).

إذا عدت الآن إلى الورقة ، فيجب أن ترى شيئًا مثل هذا:

النتائج الأولى

الجزء 4: تتبع حسابات متعددة

لأولئك الذين يتطلعون إلى تتبع حسابات متعددة ، يرجى تغيير الكود على النحو التالي:
استبدل الكود بأكمله بما يلي

الشفرة:

وظيفة حسابات متعددة () {
  // إعداد أوراق متعددة وحسابات instagram
  insertFollowerCount ("sheetName1"، "25945306")؛
  insertFollowerCount ("sheetName2"، "232192182")؛
  
}
var instagram_base_url = "https://www.instagram.com/graphql/query/"؛
وظيفة insertFollowerCount (sheetName ، user_id) {
  Logger.log (USER_ID)
  Logger.log (sheetName)
  
  var ss = SpreadsheetApp.getActiveSpreadsheet () ؛
  var sheet = ss.getSheetByName (sheetName) ؛
  Logger.log (ورقة)
  Logger.log (ق ق)
var متابعين = getFollowers (user_id) ؛
  var follow = getFollowing (user_id)؛
  var medias = getMedias (user_id)؛
  فار المشاركة = getEngagement (الوسائط ، المتابعين) ؛
sheet.appendRow ([Utilities.formatDate (التاريخ الجديد () ، "GMT" ، "yyyy-MM-dd") ، المتابعين ، التالي ، medias.count ،agement.totalLikes ،agement.totalComments ، engagement.EngagementRatio]) ؛
}؛
الدالة getFollowers (user_id) {
  إرجاع parseInt (إحضار (instagram_base_url + "؟ query_hash = 37479f2b8209594dde7facb0d904896a & variables =٪ 7B٪ 22id٪ 22٪ 3A٪ 22" + user_id + "٪ 22٪ 2C٪ 22first٪ 22٪ 3A24٪ 7D") ['] [ '] [' edge_followed_by '] [' عدد '])؛
}
دالة getFollowing (user_id) {
  إرجاع parseInt (إحضار (instagram_base_url + "؟ query_hash = 58712303d941c6855d4e888c5f0cd22f & variables =٪ 7B٪ 22id٪ 22٪ 3A٪ 22" + user_id + "٪ 22٪ 2C٪ 22first٪ 22٪ 3A24٪ 7D") ['] [ '] [' edge_follow '] [' عدد '])؛
}
وظيفة getMedias (user_id) {
  إرجاع الجلب (instagram_base_url + "؟ query_hash = f2405b236d85e8296cf30347c9f08c2a & variables =٪ 7B٪ 22id٪ 22٪ 3A٪ 22" + user_id + "٪ 22٪ 2C٪ 22first٪ 22٪ 3A12٪ 7D") ['بيانات'] [ 'edge_owner_to_timeline_media'].
}
وظيفة getEngagement (الوسائط ، أتباع) {
  var totalComments = 0 ،
    totalLikes = 0؛
  لـ (var i = 0 ؛ i <12 ؛ i ++) {
    totalComments + = parseInt (medias.edges [i] .node.edge_media_to_comment.count)؛
  }؛
  لـ (var l = 0؛ l <12؛ l ++) {
    totalLikes + = parseInt (medias.edges [l] .node.edge_media_preview_like.count)؛
  }؛
  var engagementRatio = (((totalLikes + totalComments)) / followers) / 12؛
  إرجاع {
    mediaCount: parseInt (medias.count) ،
    totalComments: totalComments ،
    totalLikes: totalLikes ،
    EngagementRatio:
  }
}
جلب الوظيفة (url) {
  var ignoreError = {
    "muteHttpExcecptions": صحيح
  }؛
  var source = UrlFetchApp.fetch (url، ignoreError) .getContentText ()؛
  فار البيانات = JSON.parse (المصدر) ؛
  إرجاع البيانات ؛
}

بعد ذلك ، قم بتشغيل (أو ضبط المشغل الخاص بك على :) "حسابات متعددة" (بدلاً من InsertData).

هنا يمكنك رؤية ورقة الحسابات المتعددة قيد التنفيذ ؛)

الجزء 5: إضافة الأتمتة

بطبيعة الحال ، فإن Analytics ليست سوى جودة الانتظام الذي يتم به جمعها. بفضل Google ، يمكننا أتمتة تنفيذ هذا البرنامج النصي بالكامل.

  • انقر فوق تحرير -> مشغلات المشروع الحالي
  • انقر على "لا توجد مشغلات. انقر هنا لإضافة واحد الآن "واختر تسلسلًا للبرنامج النصي لجمع البيانات. أنا شخصياً أفضل سحب البيانات تلقائيًا يوميًا من منتصف الليل إلى الساعة 1 صباحًا:
  • انقر فوق "حفظ" للخروج من النافذة المنبثقة.

هناك! لقد انتهيت الآن ، سينتقل البرنامج النصي كل يوم أحدث البيانات من ملفك الشخصي إلى صفحتك.

الجزء 6: حساب النمو اليومي

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

من أجل حساب هذا أضفت الصيغة التالية إلى H3:

= إذا (B3 <> ""، B3، B2، "")
ملاحظة: قد تختلف علامات komma والاقتباس حسب الإعدادات المحلية في أوراق Google.

هذه الصيغة ستتحقق مما إذا كانت هناك قيمة في عمود المتابعين. إذا لم تكن فارغة ، فسيأخذ القيمة في الخلية أعلاه ، ونخصم القيمة الجديدة. إذا لم تكن هناك قيمة جديدة في عمود المتابعين ، فسيتم ترك الخلية فارغة (وهذا أمر مفيد إذا قمت بإنشاء مخططات بها هذه البيانات ، فنحن لا نريد أن نرى 0 ، سنريد فراغات بعد ذلك!)

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

الجزء 7: التصور

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

استمتع باللعبة باستخدام المخططات الشريطية ، وخطوط الاتجاه ، ... انظر إلى ما يناسبك ويوفر أفضل الأفكار بشكل أسرع!

هذه هي الطريقة التي تبدو بها لوحة القيادة الخاصة بي

التصور البديل: Google Data Studio

يؤدي وضع الكثير من المخططات داخل Google Sheets إلى خفض أداءه عند فتح جدول البيانات نفسه. ومع ذلك ، يمكنك استخدام الورقة نفسها كموصل بيانات داخل Google Data Studio. إنه رائع حقًا ومجاني!

تتمثل فائدة استخدام Google Data Studio في أنه يمكنك بسهولة إنشاء قوائم منسدلة لفترات التاريخ وتحديد الأشهر والأسابيع والأيام ... يمكنك أيضًا تضمين التقارير داخل موقع الويب الخاص بك (حتى يعمل داخل ملفات Canva!).

الجزء 8: تجنب المشاكل والقضايا المعروفة

نظرًا للمنطقة الزمنية ، قد تكون في الصفحة ، فقد تتمكن الورقة من سحب البيانات عدة مرات في اليوم ، حتى عندما تقوم بتعيينها للقيام بذلك مرة واحدة فقط.

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

  • انتقل إلى ملف -> إعدادات جدول البيانات وتأكد من وجوده في المنطقة الزمنية بالمملكة المتحدة.

خطأ: typeError: لا يمكن قراءة خاصية "عقدة" من غير معرف. (السطر 31 ، ملف "الرمز")

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

خطأ: 429 خادم مبتوراً

هذا بشكل رئيسي لأن Instagram يرفض الاتصال (بسبب الإفراط في الاستخدام والسرعة ...) ، وفي بعض الأحيان سيؤدي ذلك إلى فشل البرنامج النصي. الحل "الحقيقي" الوحيد الذي وجدته هو المحاولة مرة أخرى بعد بضع دقائق.

المكافأة: قارن مع منافسيك

نظرًا لعدم وجود معلومات تسجيل الدخول إلى Instagram المطلوبة لجمع هذه البيانات ، فهذا يعني أيضًا أنه يمكنك تتبع منافسيك.

للقيام بذلك ، ما عليك سوى إنشاء علامة تبويب جديدة في ورقة Google. قم بتثبيت البرنامج النصي ، واضبط اسم الورقة و instagramAccountName.

يمكنك أيضًا إضافتها إلى صورك المرئية ومعرفة كيفية تكديسها مقارنة بمنافسيك.

المكافأة: كوبون خصم البصيرة الفيروسية

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

كما ذكر في المقدمة ، عنوان url هو https://viralinsight.io. لكن إذا نجحت في تحقيق هذا الهدف ، فأنا أريد حقًا أن أقدم لك مكافأة. لذلك ، سأقدم لك بكل سرور الرمز الترويجي التالي الذي يمنحك خصمًا بقيمة 15٪ على الحياة على جميع الخطط. إذا كنت لا تريد دفع هذا الغرامة ، فيمكنك تتبع حسابين مجانًا تمامًا. الرمز الترويجي هو:

MEDIUM15

كيف يمكنك تحسين هذه الورقة؟

إذا كنت قد جعلت هذا المنصب بعيدًا ، فأنا أود أن أشكرك! أود أيضًا أن أشكر نيك بويس وإيدان هيرون على وصولي إلى الطريق.

الآن يأتي السؤال الحتمي: كيف يمكنك تحسين هذه الورقة؟ ما الذي ينقصنا؟ هل تضيف المزيد من الصيغ لحساب المقاييس؟ أخبرونى من فضلكم! أنا أموت لمعرفة ذلك!

إذا كنت بحاجة إلى مساعدة في تنفيذه ، فالرجاء عدم التردد في الاتصال بي من خلال موقع الويب الخاص بي.