मुख्य सामग्री पर जाएँ

Snscrape ट्यूटोरियल: Python के साथ सोशल मीडिया कैसे स्क्रैप करें

यह snscrape ट्यूटोरियल आपको snscrape को इंस्टॉल, उपयोग और ट्रबलशूट करने में सक्षम बनाता है। आप Tweets, Facebook पोस्ट्स, Instagram हैशटैग्स या Subreddits को स्क्रैप करना सीखेंगे।
· 8 मि॰ पढ़ें

AI के साथ खोजें

Snscrape एक शक्तिशाली Python लाइब्रेरी है जो आपको Facebook, Twitter, Instagram, Reddit और अन्य जैसे विभिन्न सोशल नेटवर्किंग सर्विसेज़ (SNS) से डेटा स्क्रैप करने देती है।

सोशल मीडिया पर यह फोकस snscrape को उन क्षेत्रों में उत्कृष्ट बनाता है जहाँ सामान्य वेब स्क्रैपिंग टूल्स संघर्ष कर सकते हैं। सोशल मीडिया प्लेटफ़ॉर्म्स में अक्सर विशिष्ट डेटा संरचनाएँ और API होते हैं जिन्हें snscrape समझता है।

इसका अर्थ है कि प्लेटफ़ॉर्म-विशिष्ट विशेषताओं के इर्द-गिर्द काम करने की बजाय आपको सामान्य स्क्रेपर्स की तुलना में अधिक साफ़-सुथरा और विश्वसनीय डेटा निष्कर्षण मिलता है।

यदि आप सामान्य वेब स्क्रैपिंग के बारे में और सीखना चाहते हैं, तो Python में वेब स्क्रैपिंग और R में वेब स्क्रैपिंग पर ये कोर्स देखें।

संक्षेप में Snscrape

यहाँ देखें कि हम snscrape से क्या-क्या स्क्रैप कर सकते हैं:

  • उपयोगकर्ता प्रोफ़ाइल्स: विभिन्न प्लेटफ़ॉर्म्स पर सार्वजनिक प्रोफ़ाइल जानकारी जुटाएँ, जिनमें बायो, फ़ॉलोअर काउंट और पोस्ट इतिहास शामिल हैं।
  • पोस्ट्स और सामग्री: प्लेटफ़ॉर्म के अनुसार ट्वीट्स, Instagram पोस्ट्स, Reddit सबमिशन आदि स्क्रैप करें। आप विशिष्ट हैशटैग्स, लोकेशंस या खोजों को लक्ष्य कर अपने डेटा संग्रह को फ़ोकस कर सकते हैं।
  • सोशल ग्रुप्स और कम्युनिटीज़: Facebook ग्रुप्स, Reddit सबरेडिट्स या Telegram चैनलों में जाकर समूह चर्चाओं और इंटरैक्शंस का विश्लेषण करें।

प्रत्येक प्लेटफ़ॉर्म के लिए समर्थित विशेष डेटा प्रकारों का यह सारांश है (आधारित है snscrape के आधिकारिक दस्तावेज़ पर):

प्लेटफ़ॉर्म

समर्थित डेटा

Facebook

उपयोगकर्ता प्रोफ़ाइल्स, ग्रुप्स, कम्युनिटीज़

Instagram

उपयोगकर्ता प्रोफ़ाइल्स, हैशटैग्स, लोकेशंस

Mastodon

उपयोगकर्ता प्रोफ़ाइल्स, टूट्स (एकल या थ्रेड)

Reddit

यूज़र्स, सबरेडिट्स, सर्चेज़

Telegram

चैनल्स

Twitter

यूज़र्स, उपयोगकर्ता प्रोफ़ाइल्स, हैशटैग्स, सर्चेज़, ट्वीट्स (एकल या थ्रेड), लिस्ट पोस्ट्स, कम्युनिटीज़, ट्रेंड्स

VKontakte

उपयोगकर्ता प्रोफ़ाइल्स

Weibo (Sina Weibo)

उपयोगकर्ता प्रोफ़ाइल्स

Snscrape कैसे इंस्टॉल करें

Snscrape के साथ शुरुआत करने के लिए, पहले हमें इसे pip या conda से इंस्टॉल करना होगा:

$ pip install snscrape

यदि आप conda इस्तेमाल करते हैं, तो ऊपर दिए गए कोड स्निपेट में pip शब्द को conda से बदल दें।

Snscrape के लिए Python 3.8 या उससे ऊपर आवश्यक है, और आपको libxml2 और libxslt लाइब्रेरीज़ भी इंस्टॉल करनी पड़ सकती हैं।

इंस्टॉल होने के बाद, हम सोशल मीडिया डेटा स्क्रैप करना शुरू करने के लिए तैयार हैं।

Snscrape कैसे उपयोग करें

Snscrape की एक बड़ी ताकत इसका कमांड-लाइन इंटरफ़ेस (CLI) है, जो सोशल मीडिया डेटा फ़ेच करने में सादगी और दक्षता देता है।

आइए Facebook डेटा स्क्रैप करने के एक उदाहरण से शुरू करते हैं।

लेकिन आगे बढ़ने से पहले एक महत्वपूर्ण बात—यदि आप अपने काम में साथ-साथ फ़ॉलो करने की योजना बना रहे हैं, तो मौजूदा Terms of Service और robots.txt पढ़ें। सेवा शर्तों के अपडेट संकेत कर सकते हैं कि स्वचालित डेटा संग्रह, जिसमें स्क्रैपिंग शामिल है, बिना पूर्व लिखित सहमति के वर्तमान में अनुमत नहीं है।

अब मान लें कि हम किसी विशिष्ट पेज से Facebook पोस्ट्स इकट्ठा करना चाहते हैं।

आप snscrape के कमांड-लाइन इंटरफ़ेस (CLI) का उपयोग करके ऐसा कर सकते हैं:

$ snscrape facebook-page "page_url" > posts.txt

इस उदाहरण में, हम “page_url” को उस Facebook पेज के URL से बदल सकते हैं जिसे हम स्क्रैप करना चाहते हैं। परिणाम posts.txt नामक फ़ाइल में सहेजा जाएगा।

यदि आप मेरी तरह हैं, तो आप जटिल या दोहराए जाने वाले कार्यों के लिए स्क्रिप्ट्स का उपयोग करना पसंद कर सकते हैं। सौभाग्य से, आप snscrape को आसानी से किसी Python स्क्रिप्ट के भीतर इस्तेमाल कर सकते हैं:

import os

# Define the Facebook page URL
page_url = "your_page_url_here"

# Execute the snscrape command to retrieve posts
os.system(f"snscrape facebook-page {page_url} > posts.txt")

# Posts are saved in the 'posts.txt' file
print(f"Posts from '{page_url}' have been saved to 'posts.txt'.")

ध्यान रखें कि Facebook सहित कई सोशल मीडिया पेज सामान्यतः अनधिकृत स्क्रैपिंग को हतोत्साहित करते हैं और इसके विरुद्ध सक्रिय रूप से कार्य करते हैं। आप इस विषय पर Facebook के विचार इस लेख में पढ़ सकते हैं।

Snscrape: उन्नत तकनीकें

Snscrape डेटा संग्रह प्रक्रिया को बारीकी से नियंत्रित करने के लिए उन्नत सुविधाएँ देता है। उदाहरण के लिए, हम स्क्रैप करने के परिणामों की संख्या निर्धारित कर सकते हैं, दिनांक-सीमा के अनुसार फ़िल्टर कर सकते हैं, या विशिष्ट उपयोगकर्ताओं या हैशटैग्स को लक्ष्य बना सकते हैं।

यहाँ एक विशिष्ट दिनांक-सीमा के भीतर पोस्ट्स स्क्रैप करने का उदाहरण है:

$ snscrape facebook-page "page_url" --since 2023-01-01 --until 2023-12-31 > posts.txt

हम Reddit जैसे अन्य प्लेटफ़ॉर्म्स से भी उनके सिंटैक्स के अनुरूप समान कमांड्स का उपयोग कर डेटा स्क्रैप कर सकते हैं। जैसा कि हमने पहले के सेक्शन में बताया, snscrape फिलहाल इनसे स्क्रैपिंग सपोर्ट करता है:

  1. Facebook
  2. Instagram
  3. Mastodon
  4. Reddit
  5. Telegram
  6. Twitter
  7. VKontakte
  8. Weibo (Sina Weibo)

ग्लोबल ऑप्शंस

Snscrape में कई ग्लोबल ऑप्शंस हैं जिनसे हम अपने स्क्रैपिंग को कस्टमाइज़ कर सकते हैं।

उदाहरण के लिए, यदि हमें .txt फ़ाइलों की जगह JSON Lines चाहिए, तो हम jsonl ग्लोबल ऑप्शन का उपयोग कर अपने स्क्रैपिंग परिणाम उस फ़ाइल प्रकार में सहेज सकते हैं:

$ snscrape facebook-page "page_url" --jsonl > posts.jsonl

एक और उदाहरण है max-results ऑप्शन का उपयोग कर परिणामों की संख्या सीमित करना। यह विशेष रूप से उपयोगी है यदि हमारे पास सीमित कंप्यूटर संसाधन हैं या जिस पेज को हम स्क्रैप कर रहे हैं वहाँ डेटा की बड़ी मात्रा है:

$ snscrape facebook-page "page_url" --max-results 50 > limited_posts.txt

हम प्रत्येक पोस्ट से संबंधित अतिरिक्त जानकारी, जैसे उपयोगकर्ता प्रोफ़ाइल्स और हैशटैग्स, भी इकठ्ठा कर सकते हैं, एंटिटी जानकारी एकत्र कर के:

$ snscrape facebook-page "page_url" --with-entity > posts_with_entity.txt

Snscrape के उपयोग के मामले

सोशल मीडिया प्लेटफ़ॉर्म्स से डेटा निकालने की snscrape की क्षमता विभिन्न क्षेत्रों में कई अनुप्रयोगों के द्वार खोलती है। आइए शोधकर्ताओं और व्यवसायों के लिए कुछ प्रभावशाली उपयोग के मामलों का अन्वेषण करें।

शोध और अकादमिक

सोशल नेटवर्क सर्विसेज़ को स्क्रैप करने के शोध और अकादमिक उपयोग के मामले इस प्रकार हैं:

  • सोशल लिसनिंग और सेंटिमेंट विश्लेषण: Snscrape शोधकर्ताओं को विशिष्ट घटनाओं—वैश्विक सम्मेलनों और राजनीतिक बहसों से लेकर प्राकृतिक आपदाओं तक—से जुड़ी जनमत का विश्लेषण करने और सेंटिमेंट नापने में सक्षम बनाता है। यह डेटा जनधारणा समझने, उभरते रुझान पहचानने और निर्णय-निर्माण में मदद कर सकता है। निकाली गई जानकारी स्टॉक ट्रेडर्स के लिए भी उपयोगी हो सकती है, जो ऐसी घटनाओं पर बाज़ार की प्रतिक्रियाओं का पूर्वानुमान लगाना चाहते हैं।
  • नेटवर्क विश्लेषण और कम्युनिटी डिटेक्शन: सोशल कनेक्शंस और इंटरैक्शंस को स्क्रैप करके, शोधकर्ता सोशल नेटवर्क्स का मानचित्र बना सकते हैं, प्रभावशाली उपयोगकर्ताओं की पहचान कर सकते हैं, और समझ सकते हैं कि समुदायों के भीतर जानकारी कैसे प्रवाहित होती है। यह ज्ञान ऑनलाइन मूवमेंट्स, सोशल इन्फ्लुएंस और सूचना प्रसार के अध्ययन में सहायक हो सकता है।

व्यवसाय और मार्केटिंग

सोशल मीडिया डेटा स्क्रैपिंग व्यवसायों की इन तरीकों से मदद कर सकती है:

  • ब्रांड मॉनिटरिंग और प्रतिष्ठा प्रबंधन: व्यवसाय snscrape का उपयोग कर अपने ब्रांड के ऑनलाइन उल्लेखों को ट्रैक कर सकते हैं और ग्राहक सेंटिमेंट मॉनिटर कर सकते हैं। इससे वे संभावित संकटों की पहचान कर सकते हैं, ग्राहकों की चिंताओं का तुरंत समाधान कर सकते हैं, और अपनी मार्केटिंग अभियानों की प्रभावशीलता माप सकते हैं।
  • प्रतिस्पर्धी विश्लेषण और मार्केट रिसर्च: प्रतिस्पर्धियों की प्रोफ़ाइल्स और इंडस्ट्री फ़ोरम्स से डेटा स्क्रैप करके, व्यवसाय प्रतिस्पर्धी रणनीतियों, ग्राहक प्राथमिकताओं और अपने बाज़ार में उभरते रुझानों के बारे में मूल्यवान अंतर्दृष्टि प्राप्त कर सकते हैं। इस ज्ञान का उपयोग मार्केटिंग रणनीतियों को परिष्कृत करने, प्रतिस्पर्धात्मक बढ़त विकसित करने और उत्पाद पेशकशों को अनुकूलित करने में किया जा सकता है।

नैतिक विचार

उपयोगकर्ता गोपनीयता की रक्षा करना और नैतिक मानकों का पालन करना डेटा स्क्रैप करते समय आवश्यक है।

किसी भी स्क्रैपिंग प्रोजेक्ट को शुरू करने से पहले, प्लेटफ़ॉर्म की सेवा शर्तें पढ़ें और उपयोगकर्ताओं के डेटा की गोपनीयता की सुरक्षा के लिए योजना बनाएँ। प्लेटफ़ॉर्म की उपयोग नीतियों और दिशानिर्देशों—जैसे रेट लिमिट्स, डेटा एक्सेस प्रतिबंध और कंटेंट उपयोग अनुमतियाँ—का अनुपालन सुनिश्चित करना आपकी ज़िम्मेदारी है। इन सेवा शर्तों का पालन कर आप संभावित कानूनी जटिलताओं से बच सकते हैं और डेटा संग्रह प्रथाओं में नैतिक मानकों को बनाए रख सकते हैं।

नैतिक विचारों में स्क्रैप किए गए डेटा का जिम्मेदार हैंडलिंग और भंडारण भी शामिल है। संवेदनशील जानकारी की सुरक्षा के लिए आपको सशक्त डेटा प्रबंधन प्रथाएँ लागू करनी चाहिए, जिनमें एन्क्रिप्शन, अनामीकरण और सुरक्षित भंडारण प्रोटोकॉल शामिल हैं। एक बार डेटा आपके पास होने पर, यह सुनिश्चित करना आपकी ज़िम्मेदारी है कि उसका दुरुपयोग न हो।

Snscrape: समस्याएँ और ट्रबलशूटिंग

हालाँकि snscrape सोशल मीडिया डेटा स्क्रैप करने के लिए सशक्त कार्यात्मकता देता है, फिर भी हमें अलग-अलग समस्याओं का सामना करना पड़ सकता है।

प्रमाणीकरण त्रुटियाँ

हमें अमान्य उपयोगकर्ता नाम, पासवर्ड या API कीज़ (प्लेटफ़ॉर्म के अनुसार) से संबंधित त्रुटियाँ मिल सकती हैं।

हमें अपने क्रेडेंशियल्स में टाइपो या एक्सपायर्ड टोकन्स के लिए दोबारा जाँच करनी चाहिए। हम जिस प्लेटफ़ॉर्म को स्क्रैप कर रहे हैं, उसके लिए विशिष्ट प्रमाणीकरण आवश्यकताओं के लिए आधिकारिक दस्तावेज़ों का भी संदर्भ ले सकते हैं।

रेट लिमिटिंग

सोशल मीडिया प्लेटफ़ॉर्म्स अक्सर अत्यधिक स्क्रैपिंग से बचाने के लिए रेट लिमिट्स लगाते हैं। हमें ऐसे एरर संदेश दिख सकते हैं जो संकेत दें कि हमने अनुमत अनुरोधों की संख्या निर्धारित समयावधि में पार कर दी है।

हमें रेट लिमिट्स का ध्यान रखना चाहिए और स्क्रैपिंग गति को उसके अनुसार समायोजित करना चाहिए। Snscrape --wait जैसे विकल्प देता है ताकि अनुरोधों के बीच विलंब जोड़ा जा सके। हम समय में फैले छोटे बैचों में डेटा स्क्रैप करने पर भी विचार कर सकते हैं।

डेटा पार्सिंग त्रुटियाँ

प्लेटफ़ॉर्म की संरचना या लेआउट में अप्रत्याशित परिवर्तन पार्सिंग त्रुटियों का कारण बन सकते हैं, जहाँ snscrape निकाले गए डेटा की व्याख्या करने में संघर्ष करता है।

हमें snscrape के नवीनतम रिलीज़ के साथ अपडेट रहना चाहिए, क्योंकि डेवलपर्स अक्सर प्लेटफ़ॉर्म अपडेट्स के साथ इन समस्याओं का समाधान करते हैं। हम रिपोर्ट की गई इश्यूज़ और संभावित वर्कअराउंड्स के लिए GitHub रिपोजिटरी देख सकते हैं।

एक्सेस डिनाइड

कुछ मामलों में, प्लेटफ़ॉर्म स्क्रैपिंग प्रयासों को पूरी तरह से ब्लॉक कर सकता है।

हमें प्रत्येक प्लेटफ़ॉर्म की सेवा शर्तों का सम्मान करना चाहिए और अत्यधिक स्क्रैपिंग या संवेदनशील डेटा को लक्ष्य बनाने से बचना चाहिए। यदि स्क्रैपिंग सख्ती से प्रतिबंधित है, तो हमें वैकल्पिक डेटा स्रोतों पर विचार करना चाहिए या अपने शोध दृष्टिकोण को समायोजित करना चाहिए।

ट्रबलशूटिंग

स्मूद स्क्रैपिंग के लिए यहाँ कुछ बढ़िया टिप्स हैं:

  • छोटे से शुरू करें: बड़े डेटा संग्रह से पहले अपने कमांड्स को परखने और संभावित समस्याओं की पहचान करने के लिए छोटे स्क्रैपिंग कार्यों से शुरुआत करें।
  • दस्तावेज़ पढ़ें: आधिकारिक snscrape दस्तावेज़ स्क्रेपर-विशिष्ट विकल्पों और सर्वोत्तम प्रथाओं पर मूल्यवान अंतर्दृष्टि देता है। ट्रबलशूट और अपने स्क्रैपिंग अनुभव को ऑप्टिमाइज़ करने के लिए इसे नियमित रूप से देखें।
  • समुदाय से जुड़ें: GitHub पर snscrape समुदाय सामान्य समस्याओं के समाधान खोजने और अन्य उपयोगकर्ताओं के अनुभवों से सीखने के लिए एक बढ़िया संसाधन है।

निष्कर्ष

इस ट्यूटोरियल में, हमने विभिन्न सोशल नेटवर्किंग सर्विसेज़ से डेटा निकालने के लिए snscrape का उपयोग करने की बुनियादी बातें कवर कीं। हमने CLI और Python के माध्यम से snscrape को इंस्टॉल और उपयोग करना सीखा, और उपयोग के मामले, नैतिक विचार तथा ट्रबलशूटिंग तकनीकों का अन्वेषण किया।

आप अपनी सीखने की यात्रा जारी रख सकते हैं और सेंटिमेंट विश्लेषण, डेटा एथिक्स, या सोशल मीडिया डेटा विश्लेषण जैसे विषयों में और गहराई से जा सकते हैं:

Amberle McKee

लेखक

Amberle McKee

मैं एक पीएचडी हूँ, जिसके पास जैविक अनुसंधान परिवेश में डेटा के साथ काम करने का 13 वर्षों का अनुभव है। मैं Python, MATLAB और R सहित कई प्रोग्रामिंग भाषाओं में सॉफ्टवेयर बनाती/बनाता हूँ। मुझे सीखने के प्रति अपने प्रेम को दुनिया के साथ साझा करने का जुनून है।

विषय