Instagram هو عبارة عن شبكة اجتماعية شعبية التي تسمح للمستخدمين مشاركة الصور ومقاطع الفيديو. ومع ذلك ، بالكاد فكر أي شخص في استخدامه كمصدر بيانات لتحليل أو أتمتة العمليات. بيثون هي لغة البرمجة العالمية التي لديها العديد من المكتبات التي تسمح لك للعمل مع صفحات الويب, بما في ذلك Instagram.
في هذه المادة ونحن سوف ننظر في كيفية استخدام بيثون تحليل Instagram و استخراج البيانات المختلفة, على سبيل المثال معلومات حول المستخدمين المشاركات والتعليقات و العلامات. سنتحدث عن الأدوات والمكتبات اللازمة ، بالإضافة إلى تقديم كود وتفسيرات مفصلة للمبتدئين.
عندما Instagram تحليل المعنية ، ينبغي أن يوضع في الاعتبار أن API for Instagram الخاص متوفر فقط على الشركات الشريكة. ومع ذلك ، هناك طرق بديلة للوصول إلى البيانات باستخدام تجريف الويب. في هذه المقالة سنقوم بشرح كيفية استخدام BeautifulSoup والسيلينيوم المكتبات لاستخراج البيانات من Instagram في بيثون.
Instagram تحليل ملاحظة: قبل البدء في تحليل Instagram ، تأكد من أن كنت معتادا على قواعد استخدام هذه الشبكة الاجتماعية والامتثال لجميع القوانين و القيود التي وضعتها Instagram.
لنبدأ بتثبيت المكتبات والأدوات اللازمة. العمل مع Instagram في بيثون ، سوف تحتاج شوربة جميلة و السيلينيوم المكتبات. حساء جميل هو حزمة بيثون لتحليل وثائق هتمل و شمل ، والسيلينيوم هو إطار ويب لأتمتة المتصفحات. قبل تثبيت ، تأكد من أنك قد قمت بالفعل بتثبيت بيثون ومدير حزمة بيثون نقطة.
- تثبيت وتكوين بايثون
- الخطوة 1: تثبيت بايثون
- الخطوة 2: التحقق من التثبيت
- الخطوة 3: تثبيت الحزم
- تثبيت المكتبات اللازمة
- الحصول على Instagram API
- مصادقة المستخدم
- تحليل بيانات المستخدم
- تحليل هذه الوظائف
- حفظ البيانات في ملف
- سؤال وجواب
- التي بيثون وحدة يجب أن تستخدم لتحليل Instagram?
- كيف يمكنني الحصول على معلومات حول Instagram الوظائف باستخدام تحليل?
- هل من الممكن تحليل Instagram دون استخدام API ؟
- ما هي البيانات التي يمكن الحصول عليها عن طريق تحليل Instagram?
تثبيت وتكوين بايثون
بايثون هي لغة برمجة شائعة تستخدم لتطوير تطبيقات مختلفة ، بما في ذلك خوادم الويب وبرامج سطح المكتب وتطبيقات الهاتف المحمول والمزيد. قبل البدء في العمل مع Instagram تحليل في بيثون ، تحتاج إلى تثبيت وتكوين بيئة تطوير بيثون.
الخطوة 1: تثبيت بايثون
الخطوة الأولى هي تثبيت بايثون على جهاز الكمبيوتر الخاص بك. يمكنك تنزيل مثبت بايثون من موقع بايثون الرسمي (https://www.python.org/downloads /). يرجى ملاحظة أن الأمر يستحق اختيار إصدار بايثون المناسب لنظام التشغيل الخاص بك.
قم بتشغيل مثبت بايثون واتبع تعليمات التثبيت. سيطالبك المثبت بتحديد دليل لتثبيت بايثون ، تحتاج إلى تحديد الدليل المناسب ومتابعة التثبيت. بعد اكتمال التثبيت ، ستكون بايثون متاحة من سطر الأوامر.
الخطوة 2: التحقق من التثبيت
بعد تثبيت بايثون ، يمكنك التحقق مما إذا كان يعمل بشكل صحيح. للقيام بذلك ، افتح موجه الأوامر (في ويندوز ، يمكنك استخدام وين + ص تركيبة المفاتيح ، اكتب " كمد " واضغط إنتر) وأدخل الأمر:
بيثون version الإصدارإذا تم تثبيت بايثون بنجاح ، سترى إصدار بايثون الذي قمت بتثبيته.
الخطوة 3: تثبيت الحزم
تحليل Instagram في بيثون, سوف تحتاج إلى حزم إضافية. يمكنك تثبيتها باستخدام أداة إدارة حزمة النقطة (مثبت الحزمة لبيثون).
إذا كنت تستخدم إصدار بايثون 2.7.9 وما فوق أو 3.4 وما فوق ، فيجب تثبيت النقطة بالفعل بشكل افتراضي. للتحقق من وجود نقطة ، أدخل الأمر التالي:
بيب-الإصدارإذا كانت النقطة متوفرة ، يجب أن ترى نسختها. إذا لم يتم تثبيت نقطة ، تحتاج إلى تثبيته. للقيام بذلك ، استخدم الإرشادات التالية: https://pip.pypa.io/en/stable/installing /.
بعد تثبيت النقطة ، يمكنك تثبيت الحزم الضرورية باستخدام الأمر التالي:
حزمة تثبيت بيب_الاسماستبدل "اسم الحزمة" باسم الحزمة التي تحتاجها.
الآن لديك الثعبان البيئة تثبيت وتكوين ، وكنت على استعداد لبدء العمل مع Instagram تحليل في بيثون.
تثبيت المكتبات اللازمة
تحليل Instagram في بيثون ، سوف تحتاج المكتبات التالية:
- instaloader مكتبة لتحميل الصور ومقاطع الفيديو والقصص وغيرها من المعلومات من التشكيلات ، الهاش Instagram المواقع;
- طلبات-مكتبة لإرسال طلبات المتشعب;
- بيوتيفول سوب 4 هي مكتبة لتحليل شفرة هتمل واستخراج البيانات اللازمة;
- الباندا هي مكتبة لتحليل البيانات;
- نومبي هي مكتبة للعمل مع المصفوفات والمصفوفات;
- ماتلوتليب هي مكتبة لتصور البيانات.
يمكنك تثبيت هذه المكتبات عن طريق تشغيل الأمر التالي في سطر الأوامر:
بيب تثبيت إنستالوادر طلبات بوتيفولسوب4 الباندا نومبي ماتلوتليبالحصول على Instagram API
من أجل الوصول إلى Instagram API, تحتاج إلى تسجيل التطبيق مع developers.facebook.com. بعد التسجيل سوف تقدم لكم مع تطبيق معرف المفتاح السري. سيتم استخدام هذه البيانات للترخيص والوصول إلى واجهة برمجة التطبيقات.
العمل مع Instagram API ، يجب استخدام أوث 2.0 المصادقة. سوف تكون قادرة على تخويل المستخدمين و تقديم طلبات نيابة عنهم إلى Instagram API. للقيام بذلك ، سوف تحتاج إلى البيانات التالية:
- معرف العميل-معرف التطبيق الخاص بك.
- المفتاح السري (سر العميل) هو المفتاح السري للتطبيق الخاص بك.
- إعادة توجيه أوري — أوري من الصفحة التي سيتم إعادة توجيه المستخدم بعد إذن.
أولا ، تحتاج إلى تثبيت مكتبة الطلبات:
طلبات تثبيت النقطة
التالي, يمكنك البدء في كتابة رمز تفويض الوصول إلى Instagram API. قد يبدو نموذج التعليمات البرمجية كما يلي:
طلبات الاستيراد
client_id = "YOUR_CLIENT_ID"
client_secret = "YOUR_CLIENT_SECRET"
redirect_uri = "YOUR_REDIRECT_URI"
# Авторизация пользователя
auth_url = f"https://api.instagram.com/oauth/authorize?client_id={client_id}&redirect_uri={redirect_uri}&response_type=code"
response = requests.get(auth_url)
# Перенаправление пользователя на страницу авторизации
print(f"Перейдите по следующей ссылке и разрешите доступ к вашему аккаунту Instagram: {auth_url}")
# Пользователь вводит полученный код авторизации
code = input("Введите полученный код авторизации: ")
# Передача кода авторизации и получение Access Token
access_token_url = f"https://api.instagram.com/oauth/access_token"
data = {
"client_id": client_id,
"client_secret": client_secret,
"grant_type": "authorization_code",
"redirect_uri": redirect_uri,
"code": code
}
response = requests.post(access_token_url, data=data)
# Получение Access Token
access_token = response.جسون () ["الوصول"]
# الآن يمكنك تقديم طلبات Instagram API باستخدام تلقى رمز وصول
بعد نجاح الترخيص والحصول على رمز دخول ، سوف تكون قادرة على تقديم طلبات Instagram API باسم المستخدم المصرح له.
من المهم مراقبة الأمان والاحتفاظ بالبيانات السرية (سر العميل ورمز الوصول) في مكان آمن.
مصادقة المستخدم
المصادقة هي عملية التحقق من صحة المستخدم وبيانات اعتماده من أجل الوصول إلى الموارد المحمية.
في حالة Instagram تحليل المصادقة مطلوبة منذ الوصول إلى بيانات المستخدم محدودة الأشخاص غير المرخص لهم لا يسمح. Instagram API المصادقة تتم عبر أوث 2.0.
أهم الخطوات للحصول على مصادقة المستخدم في Instagram API:
- تسجيل التطبيق في Instagram منصة المطور. للقيام بذلك تحتاج إلى إنشاء حساب مطور على Instagram الموقع و تسجيل طلب جديد.
- الحصول على العميل و العميل السري. بعد تسجيل التطبيق على Instagram منصة المطور سوف تكون فريدة من نوعها client_id معرف و client_secret المفتاح السري.
- الحصول على رمز التفويض. للقيام بذلك, تحتاج إلى إعادة توجيه المستخدم إلى Instagram الصفحة ترخيص ، حيث سيكون لديك للتأكد من إذن الدخول إلى حسابه البيانات.
- تبادل رمز التفويض للوصول. بعد تلقي authorization_code ، تحتاج إلى إرسال طلب POST إلى Instagram API ، ويمر في ذلك client_id, client_secret و authorization_code. ستتلقى الاستجابة الوصول ، والتي سيتم استخدامها للوصول إلى بيانات المستخدم.
مما أدى access_token يمكن حفظها واستخدامها المصرح به إلى شبكة Instagram API و الحصول على ما يلزم من بيانات المستخدم.
| مصادقة المستخدم في Instagram API | |
|---|---|
| خطوة | الوصف |
| 1 | تسجيل التطبيق في Instagram منصة المطور |
| 2 | الحصول على العميل و العميل السري |
| 3 | الحصول على التصريح_الرمز |
| 4 | تبادل رمز التفويض للوصول |
بعد نجاح المصادقة على access_token ، يمكنك استخدامه لجعل طلبات Instagram API واسترجاع بيانات المستخدم مثل الصور, المشتركين, الاشتراكات, وغيرها.
تحليل بيانات المستخدم
عند تحليل بيانات المستخدم في Instagram, فمن الممكن الحصول على معلومات مختلفة حول الملف الشخصي للمستخدم ، مثل:
- اسم المستخدم: الاسم الذي يتم تسجيل الحساب على Instagram.
- السيرة الذاتية: وصف أو معلومات موجزة عن نفسك يحددها المستخدم في ملفه الشخصي.
- عدد المشتركين: عدد المستخدمين المشتركين في الحساب.
- عدد الاشتراكات: عدد الحسابات التي يشترك فيها المستخدم.
- عدد المنشورات: عدد الصور ومقاطع الفيديو المنشورة في الملف الشخصي.
- تاريخ التسجيل: تاريخ إنشاء Instagram حساب.
- آخر نشاط: تاريخ ووقت آخر تسجيل دخول إلى الحساب.
- فئة الحساب: مثل " المدونة الشخصية "و" الموضة "و" الطعام " وغيرها.
- رابط الملف الشخصي: عنوان ورل لملف تعريف المستخدم.
يمكنك الحصول على هذه البيانات باستخدام مكتبة بوتيفولسوب وتحليل رمز هتمل من صفحة ملف تعريف المستخدم. لهذا:
- أولا ، تحتاج إلى الحصول على رمز هتمل لصفحة ملف تعريف المستخدم باستخدام مكتبة الطلبات:
طلبات الاستيراد
username = "username" # имя пользователя, чьи данные нужно получить
url = f"https://www.instagram.com/{username}/"
response = requests.get(url)
html = response.text
- Затем, полученный HTML-код нужно передать в BeautifulSoup для парсинга:
from bs4 import BeautifulSoup
soup = BeautifulSoup(html, "html.parser")
- Далее, нужно найти и извлечь нужные элементы из HTML-кода с помощью методов BeautifulSoup:
profile_name = soup.find("h1").text
biography = soup.البحث ("ديف" ، الصف_= "السيرة الذاتية").النص
عدد المتابعين = الحساء.ابحث عن ("امتداد" ، صف_="عدد المتابعين").النص
بعد العد = الحساء.ابحث عن ("امتداد" ، صف_="متابعة العد").النص
عدد المشاركات = حساء.ابحث عن ("امتداد" ، صف_="عدد المشاركات").النص
تاريخ التسجيل = حساء.ابحث عن ("امتداد" ، صف_="تاريخ التسجيل").النص
آخر_نشاط = حساء.ابحث عن ("امتداد" ، صف_="آخر_نشاط").النص
الفئة = حساء.تجد ("سبان" ، فئة_="الفئة").النص
الملف الشخصي = الحساء . البحث عن ("أ" ، هريف=و " https://www.instagram.com الحصول على ("هريف")
- أخيرا ، يمكن استخدام البيانات التي تم الحصول عليها وفقا لتقديرك ، على سبيل المثال ، لعرضها:
طباعة ("اسم المستخدم:" ، اسم الملف الشخصي)
طباعة ("السيرة الذاتية:" ، السيرة الذاتية)
طباعة ("عدد المشتركين:" ، عدد المتابعين)
طباعة ("عدد الاشتراكات:" ، يلي_العد)
طباعة ("عدد المنشورات:" ، عدد المنشورات)
طباعة ("تاريخ التسجيل:" ، تاريخ التسجيل)
طباعة ("آخر نشاط:"،آخر_نشاط)
طباعة ("فئة الحساب:" ، الفئة)
طباعة ("رابط الملف الشخصي:" ، الملف الشخصي)
وهكذا باستخدام BeautifulSoup مكتبة HTML تحليل أساليب يمكنك الحصول على مختلف المستخدم بيانات الملف الشخصي على Instagram.
تحليل هذه الوظائف
تحليل هذه الوظائف على Instagram يسمح لك للحصول على معلومات عن كل فرد آخر ، مثل النصوص, الصور, التعليقات وغيرها من المعلومات الهامة. هناك طرق وأدوات مختلفة لذلك ، بما في ذلك مكتبات لغة برمجة بايثون.
واحدة من أهم أدوات تحليل هذه الوظائف على Instagram هو BeautifulSoup المكتبة. تتيح لك هذه المكتبة الحصول على شفرة هتمل لصفحة بها منشور واستخراج البيانات اللازمة منها باستخدام طرق ووظائف مختلفة.
1. الحصول على رمز هتمل للصفحة
أولا ، تحتاج إلى الحصول على رمز هتمل للصفحة مع المنشور. ويمكن القيام بذلك باستخدام مكتبة الطلبات ، والتي تسمح لك بإرسال طلبات هتب وتلقي الردود.
طلبات الاستيراد
البريد = "https://www.instagram.com/p/ABC123 /" # مثال على رابط المشاركة
الاستجابة = الطلبات.الحصول على (آخر_أورل)
أتش تي أم أل كود = استجابة.المحتوى
2. تحليل البيانات من شفرة هتمل
بعد تلقي رمز هتمل للصفحة مع المنشور ، يمكنك البدء في استخراج البيانات اللازمة. يتم استخدام مكتبة بوتيفولسوب لهذا الغرض. أولا ، تحتاج إلى إنشاء جميلةكائن سوب عن طريق تمريره رمز هتمل من الصفحة.
من بس 4 استيراد بوتيفولسوب
حساء = بوتيفولسوب (أتش تي أم أل كود ، "أتش تي أم أل.محلل")
ثم يمكنك استخدام مختلف جميلةأساليب ووظائف الحساء للعثور على العناصر الضرورية واستخراجها على الصفحة. على سبيل المثال ، يمكنك الحصول على نص منشور:
ما بعد النص = حساء.البحث ("ديف" ، {"فئة":"سي 4فمك"}).النص
3. الحصول على الصور والوسائط
للحصول على الصور وملفات الوسائط الأخرى من وظيفة ، يمكنك استخدام سمات إمغ وعلامات الفيديو ، على التوالي. على سبيل المثال ، يمكنك الحصول على جميع صور المنشور:
الصور = حساء.البحث عن الكل ("إمغ")
للصورة في الصور:
صورة = صورة ["سرك"]
# مزيد من معالجة الصور
4. تلقي التعليقات
للحصول على تعليقات على وظيفة ، يمكنك استخدام سمات العلامة أول مع فئة "مر 508". على سبيل المثال ، يمكنك الحصول على جميع التعليقات على منشور:
تعليقات_قسم = حساء.البحث عن ("المجاهدين" ، {"فئة": "مر 508"})
التعليقات = قسم التعليقات.ابحث عن الكل ("لي")
للتعليق في التعليقات:
نص التعليق = تعليق.النص
# مزيد من المعالجة للتعليقات
وهكذا ، فإن توزيع هذه الوظائف على Instagram باستخدام بيثون هو بسيط جدا ويسمح لك للحصول على الكثير من المعلومات المفيدة حول كل وظيفة. مكتبة بيوتيفولسوب وغيرها من أدوات بيثون تبسيط كبير هذه العملية وجعلها في متناول مجموعة واسعة من المطورين.
حفظ البيانات في ملف
عندما يكون لدينا يقترن بنجاح البيانات من Instagram ، فمن الضروري أن حفظ لهم لمزيد من المعالجة أو تحليل. للقيام بذلك ، يمكننا استخدام تنسيقات الملفات المختلفة مثل الملفات النصية ، كسف ، جسون وغيرها. اعتمادا على احتياجاتك وتفضيلاتك ، يمكنك اختيار التنسيق الأكثر ملاءمة.
فيما يلي بعض تنسيقات الملفات الشائعة ومزاياها:
ملفات نصية: هذا هو أبسط تنسيق لحفظ البيانات. يمكنك حفظ البيانات في ملف نصي بسيط حيث يتوافق كل سطر مع كائن بيانات منفصل. ومع ذلك ، قد يكون هذا التنسيق غير مريح لمزيد من المعالجة إذا كانت البيانات تحتوي على بنية معقدة أو كانت هناك حاجة إلى عمليات معينة (على سبيل المثال ، التصفية أو الفرز).
كسف (قيم مفصولة بفواصل): هذا تنسيق حيث يتم فصل البيانات بفواصل. هذا الشكل هو غالبا ما تستخدم لتخزين جداول البيانات مثل بيانات المستخدم أو قائمة Instagram الوظائف. يمكن فتح ملفات كسف ومعالجتها بسهولة باستخدام برامج مختلفة مثل مايكروسوفت إكسل أو أوراق جوجل.
جسون (جافا سكريبت كائن تدوين): هذا هو الشكل الذي هو مفهوم لكثير من لغات البرمجة ، بما في ذلك بيثون. جسون يمثل البيانات في شكل الكائنات والمصفوفات ، مما يجعلها مريحة لتخزين ونقل هياكل البيانات المعقدة. ملفات جسون يمكن قراءتها بسهولة وكتابتها باستخدام بيثون باستخدام مكتبة جسون المضمنة.
عند اختيار تنسيق ملف لحفظ البيانات ، من المهم أن تأخذ في الاعتبار المتطلبات والقدرات المحددة لمشروعك. إذا كنت ترغب في حفظ البيانات كقائمة بسيطة من الكائنات أو البيانات المجدولة ، ثم ملفات كسف قد يكون خيارا جيدا. إذا كانت بياناتك تحتوي على بنية معقدة ، أو كانت هناك حاجة إلى عمليات معينة ، أو كنت تخطط لاستخدامها في برامج أو خدمات أخرى ، فقد تكون ملفات جسون خيارا أكثر ملاءمة.
مثال على حفظ البيانات إلى ملف كسف:
استيراد كسف
البيانات = [
['الاسم' ، 'العمر' ، 'المدينة'],
['ماريا' ، ' 25 ' ، 'موسكو'],
['إيفان' ، ' 30 ' ، 'سانت بطرسبرغ'],
['Александр', '28', 'Новосибирск'],
]
اسم الملف = ' البيانات.كسف'
مع فتح (اسم الملف ، 'ث' ، نيولين= "، ترميز= 'أوتف-8') كملف:
الكاتب = كسف.كاتب (ملف)
كاتب.الكتاب (البيانات)
Пример сохранения данных в سلمان файл:
استيراد جسون
البيانات = {
'المستخدم':'جون دو',
المتابعون: 100,
'المشاركات': [
'المشاركة 1',
'المشاركة 2',
'المشاركة 3'
]
}
اسم الملف = ' البيانات.جسون
مع فتح (اسم الملف ، 'ث' ، ترميز= 'أوتف-8') كملف:
(جسون).تفريغ (بيانات ، ملف،ضمان = خطأ ، مسافة بادئة=4)
، والتي ستغلق الملف تلقائيا بعد الانتهاء من العمل معه.
الآن لديك كل الأدوات اللازمة لتحليل البيانات من Instagram وحفظه إلى الملفات من صيغ مختلفة. يمكنك اختيار التنسيق الأكثر ملاءمة لمشروعك ومواصلة العمل مع البيانات وفقا لمتطلباتك واحتياجاتك.
سؤال وجواب
التي بيثون وحدة يجب أن تستخدم لتحليل Instagram?
تحليل Instagram في بيثون ، يمكنك استخدام BeautifulSoup وحدة الذي يسمح لك لتحليل الكود من الصفحة واستخراج البيانات اللازمة.
كيف يمكنني الحصول على معلومات حول Instagram الوظائف باستخدام تحليل?
للحصول على معلومات حول Instagram الوظائف باستخدام تحليل, تحتاج إلى الوصول إلى كود HTML من صفحة الوظائف ، ومن ثم استخدام BeautifulSoup طرق استخراج البيانات الضرورية ، مثل نص آخر, المؤلف, عدد الإعجابات و التعليقات.... الخ
هل من الممكن تحليل Instagram دون استخدام API ؟
نعم ، يمكنك تحليل Instagram دون استخدام API. واجهة برمجة التطبيقات هي واجهة توفرها الشبكة الاجتماعية للتفاعل مع المطورين. ومع ذلك ، في حالة Instagram عدد محدود من المطورين الوصول إلى API. وبالتالي الحصول على البيانات من Instagram ، يمكنك استخدام تحليل الكود من الصفحات.
ما هي البيانات التي يمكن الحصول عليها عن طريق تحليل Instagram?
باستخدام Instagram تحليل, يمكنك الحصول على مختلف البيانات ، مثل المعلومات عن المستخدمين (اسم, تسجيل الدخول, عدد المشتركين والاشتراكات ، إلخ.) ، منشورات المستخدم (نشر النص ، المؤلف ، عدد الإعجابات والتعليقات ، إلخ.) ، الهاش ، الأماكن وأكثر من ذلك بكثير. كل هذا يتوقف على الأهداف والغايات التي حددتها للتحليل.