पायथन के साथ एक बेसिक टेलीग्राम बॉट कैसे बनाएं 3

पायथन के साथ एक बेसिक टेलीग्राम बॉट कैसे बनाएं 3

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





जबकि कुछ को बॉट विकसित करना एक कठिन काम लग सकता है, यह वास्तव में नहीं है। सही योजना के साथ, आप एक घंटे से भी कम समय में टेलीग्राम बॉट बना सकते हैं और चल सकते हैं! यहां बताया गया है कि एक साधारण टेलीग्राम बॉट कैसे बनाया जाता है जो संकेत दिए जाने पर इंटरनेट बिल्लियों की प्यारी तस्वीरें आउटपुट करता है।





शुरू करना

इस ट्यूटोरियल के लिए, हम पायथन 3 का उपयोग करने जा रहे हैं, अजगर-टेलीग्राम-बॉट तथा अनुरोध पुस्तकालय, और The CatAPI .





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

फ़ंक्शन कैलकुलेटर का डोमेन और रेंज

टोकन प्राप्त करने के लिए, के साथ बातचीत शुरू करें @BotFather जो, जैसा कि नाम से पता चलता है, एक आधिकारिक बॉट है जो आपको अपने स्वयं के बॉट बनाने और अनुकूलित करने देता है। आप दिए गए लिंक का उपयोग करके बॉट तक पहुंच सकते हैं या टेलीग्राम पर वैकल्पिक रूप से '@botfather' खोज सकते हैं।



चैट में एक बार, टाइप करके अपना बॉट बनाएं /न्यूबोट आदेश। अपने बॉट का नाम और उपयोगकर्ता नाम सेट करना जारी रखें (हमने अपना नाम @pawsomebot रखने का फैसला किया है)। इसके बाद, आपको अपने बॉट के लिए एक अद्वितीय टोकन मिलेगा।

अब जब हमारे पास सभी पूर्वापेक्षाएँ हैं, तो रोमांचक भाग पर जाने का समय आ गया है!





पुस्तकालय स्थापित करना

यदि आप विंडोज का उपयोग कर रहे हैं, तो कमांड प्रॉम्प्ट खोलें और निम्न कमांड टाइप करें:

pip install python-telegram-bot
pip install requests

यदि आप macOS या Linux का उपयोग कर रहे हैं, तो इसके बजाय अपने टर्मिनल पर निम्न कमांड का उपयोग करें। इसके अतिरिक्त Linux में, सुनिश्चित करें कि आप sudo विशेषाधिकार वाले उपयोगकर्ता के रूप में लॉग इन हैं।





pip3 install python-telegram-bot
pip3 install requests

कार्यक्रम लिखना

अपने कंप्यूटर पर एक नया फ़ोल्डर बनाएं और इसे अपने पसंदीदा संपादक में खोलें। एक नई फाइल बनाएं और इसे main.py नाम दें। इस फ़ाइल में आपके बॉट का स्रोत कोड होगा।

अब, आइए उन पुस्तकालयों को आयात करें जिन्हें हमने उनके कुछ अंतर्निहित कार्यों के साथ पहले स्थापित किया था।

from telegram.ext import Updater, CommandHandler
import requests
import re

यहां से कार्यक्रम का प्रवाह TheCatAPI तक पहुंचना, एक यादृच्छिक छवि का URL प्राप्त करना और उस छवि को उपयोगकर्ता की चैट पर भेजना है।

आइए छवि URL प्राप्त करने के लिए एक फ़ंक्शन के साथ शुरू करें, जिसे अनुरोध मॉड्यूल का उपयोग करके किया जा सकता है। इस फ़ंक्शन में, हम TheCatAPI द्वारा प्रदान की गई एक यादृच्छिक फ़ाइल के JSON डेटा को लोड करते हैं और बाद में उपयोग के लिए इसके URL को निकालते हैं। JSON ऑब्जेक्ट के प्रारूप को देखने के लिए, इस पर जाएं https://api.thecatapi.com/v1/images/search आपके ब्राउज़र पर। आप कुछ इस तरह नोटिस करेंगे:

[{'breeds':[],'id':'a8c','url':'url.jpg','width':800,'height':533}]

ध्यान दें कि JSON ऑब्जेक्ट एक सरणी है जिसमें एक शब्दकोश होता है। इस शब्दकोश में 'url' कुंजी वाला URL है। URL निकालने के लिए, हमें सरणी के पहले तत्व और फिर संबंधित कुंजी को संदर्भित करना होगा।

def getUrl():
#obtain a json object with image details
#extract image url from the json object
contents = requests.get('https://api.thecatapi.com/v1/images/search')
url = contents[0]['url']
return url

अगला, हमें इस छवि को उपयोगकर्ता की चैट में भेजने की आवश्यकता है। इसके लिए हमें एक इमेज यूआरएल के साथ-साथ यूजर की चैट की यूनिक आईडी की जरूरत होती है। आइए ऐसा करने के लिए एक रैपर फ़ंक्शन बनाएं। सबसे पहले, हम कॉल करते हैं गेटयूआरएल () . यादृच्छिक छवि का URL प्राप्त करने के लिए फ़ंक्शन --- यह URL हर बार आपके प्रोग्राम द्वारा फ़ंक्शन के माध्यम से पुनरावृत्त होने पर बदल जाता है।

इसके बाद प्राप्तकर्ता उपयोगकर्ता की चैट आईडी प्राप्त होती है, जो संदेशों के लिए बॉट के लक्ष्य स्थान को परिभाषित करती है और बॉट एपीआई के इनबिल्ट के माध्यम से यूआरएल को पार्स करती है। चित्र भेज() समारोह।

def sendImage(bot, update):
url = getUrl()
chat_id = update.message.chat_id
bot.send_photo(chat_id=chat_id, image=url)

बॉट एपीआई के विभिन्न अंतर्निहित कार्यों और वे कैसे काम करते हैं, इसके बारे में अधिक जानने के लिए, टेलीग्राम की जांच करने के लिए स्वतंत्र महसूस करें आधिकारिक दस्तावेज इस ट्यूटोरियल के बाद।

अंत में, चलिए एक ऐसा फ़ंक्शन बनाते हैं जो बॉट के समग्र कामकाज को नियंत्रित करता है। यह फ़ंक्शन --- पारंपरिक रूप से मुख्य () कहा जाता है --- जहां हम ट्यूटोरियल की शुरुआत में प्राप्त टोकन का उपयोग करके बॉट एपीआई को एक HTTP अनुरोध भेजते हैं और फिर परिभाषित करते हैं कि बॉट का उपयोगकर्ता इंटरैक्शन कैसा होगा। हमारे जैसे सरल मामले में, इसका अनिवार्य रूप से मतलब बॉट शुरू करना और कॉल करना है छवि भेजें () उपयोगकर्ता द्वारा संकेत दिए जाने पर फ़ंक्शन।

def main():
updater = Updater('1190888035:AAGeJ9316R95NqJLFefV5vQA-UL4np11V2c')
#call sendImage() when the user types a command in the telegram chat
updater.dispatcher.add_handler(CommandHandler('meow',sendImage))
#start the bot
updater.start_polling()
updater.idle()
if __name__ == '__main__':
main()

आपका अंतिम कार्यक्रम इस तरह दिखना चाहिए:

from telegram.ext import Updater, CommandHandler
import requests
import re
def getUrl():
#obtain a json object with image details
#extract image url from the json object
contents = requests.get('https://api.thecatapi.com/v1/images/search')
url = contents[0]['url']
return url
def sendImage(bot, update):
url = getUrl()
chat_id = update.message.chat_id
bot.send_photo(chat_id=chat_id, image=url)
def main():
updater = Updater('1190888035:AAGeJ9316R95NqJLFefV5vQA-UL4np11V2c')
#call sendImage() when the user types a command in the telegram chat
updater.dispatcher.add_handler(CommandHandler('meow',sendImage))
#start the bot
updater.start_polling()
updater.idle()
if __name__ == '__main__':
main()

आपका अपना टेलीग्राम Bot

बधाई हो! आपने अपना बहुत ही तनाव-मुक्त बॉट बनाया है जो संकेत दिए जाने पर सबसे प्यारी इंटरनेट बिल्लियों की ओपन-सोर्स छवियां भेजता है। अपना प्रोग्राम चलाने का प्रयास करें और टाइप करें /मियांउ इसे सक्रिय करने के लिए अपने बॉट की चैट में।

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

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

अपना टेलीग्राम बॉट ऑनलाइन होस्ट करें

अब जब आपका बॉट तैयार है और चल रहा है, तो अपने पीसी पर main.py को बंद करने का प्रयास करें और अपने टेलीग्राम मैसेंजर ऐप पर बॉट का उपयोग करें। क्या यह अभी भी का जवाब देता है /मियांउ आदेश? नहीं, ऐसा नहीं है।

एक शुरुआत के रूप में, आप भ्रमित हो सकते हैं कि जब आप पहले से ही इंटरनेट पर चलने वाला एक बॉट बना चुके हैं तो आपके पीसी पर main.py को ऊपर और चलने की आवश्यकता क्यों है। इसका कारण यह है कि प्रोग्राम इस प्रोग्राम में प्रयुक्त एपीआई को HTTP अनुरोध भेजने के लिए आपके पीसी को स्थानीय सर्वर के रूप में उपयोग करता है।

जैसे, हर बार जब आप ऐप का उपयोग करना चाहते हैं तो प्रोग्राम चलाना न तो संभव है और न ही सुविधाजनक। इस समस्या को हल करने के लिए, हमें आपके डिवाइस पर बॉट की निर्भरता को हटाना होगा

ऐसा करने का एक तरीका यह है कि आप अपने स्वयं के वेब सर्वर को स्थापित करने के लिए रास्पबेरी पाई जैसे कम लागत वाले मुद्रित सर्किट बोर्ड (पीसीबी) का उपयोग करें और अपने प्रोग्राम को चलाने के लिए इसका उपयोग करें। इसका आपके पीसी पर प्रोग्राम चलाने के समान लाभ है, इसे पूरे दिन और रात में रखने की लागत के बिना क्योंकि पीसीबी में काफी कम ऊर्जा पदचिह्न होता है।

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

साझा करना साझा करना कलरव ईमेल हरोकू पर अपनी पायथन वेबसाइट को मुफ्त में कैसे होस्ट करें?

बिना किसी लागत के एक छोटी वेबसाइट होस्ट करने की आवश्यकता है? हरोकू वही हो सकता है जो आप खोज रहे हैं।

आगे पढ़िए
संबंधित विषय
  • प्रोग्रामिंग
  • अजगर
  • तार
  • चैटबोट
  • सोशल मीडिया बॉट्स
लेखक के बारे में यश चेलानी(१० लेख प्रकाशित)

यश एक महत्वाकांक्षी कंप्यूटर विज्ञान का छात्र है, जो चीजों को बनाना और टेक के बारे में सभी चीजों के बारे में लिखना पसंद करता है। अपने खाली समय में, वह स्क्वैश खेलना पसंद करते हैं, नवीनतम मुराकामी की एक प्रति पढ़ते हैं, और स्किरीम में ड्रेगन का शिकार करते हैं।

यश चेलानी की और फ़िल्में या टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें