آموزش ربات نویسی تلگرام با پایتون

Shape Image One
Shape Image One
 Shape Image Four
 Shape Image Four
 Shape Image Four
 Shape Image Four
 Shape Image Four
 Shape Image Four

چرا یادگیری برنامه نویسی ربات تلگرام اهمیت دارد؟

پیام رسان محبوب تلگرام روز به روز در حال توسعه است و با امکانات فوق العاده ای که در اختیار کاربران قرار میدهد، آینده بی نظیری را میتوان برایش پیش بینی کرد.

سازنده این اپلیکیشن، با در اختیار گذاشتن یک داکیومنت قدرتمند و بسیار جامع، نگاه برنامه نویسان زیادی را به خود جذب کرده است.

ربات تلگرام میتواند اصلی ترین دلیل محبوبیت این برنامه در آینده ای نه چندان دور باشد. زیرا میتوان هر ایده ای را با استفاده از ربات های تلگرامی پیاده سازی کرد.

زبان های برنامه نویسی ربات تلگرام :

زبان های معمول برای برنامه نویسی ربات های تلگرامی، PHP و PYTHON می باشد. که تیم رکسار یک دوره آموزشی جامع ساخت ربات تلگرام با پایتون را برای شما بصورت رایگان آماده کرده است.

در تریلر زیر میتوانید خلاصه ای از این آموزش را مشاهده کنید و در ادامه مقاله به توضیح کامل این دوره می پردازیم.

و در انتهای مقاله نیز میتوانید دوره آموزشی را بطور کامل دانلود کنید.

پخش ویدیو

شرح و بررسی دوره آموزشی ربات تلگرام با پایتون :

در این دوره آموزشی سعی کرده ایم ملموس ترین نوع آموزش را به شما ارائه دهیم. این دوره آموزشی پروژه محور می باشد و همراه با یک پروژه واقعی تمامی مباحث تخصصی را فراخواهید گرفت.

در این دوره آموزشی ساخت یک ربات پیام رسان نسبتا ساده و پرکاربرد را آموزش می دهیم که وظیفه آن ارسال پیام های کاربران به شما و بالعکس می باشد.

این ربات پیام رسان دو کاربرد مهم و اساسی دارد :

  • در حالت اول ادمین های کانال های تلگرامی نیازمند داشتن این ربات هستند تا راحت تر با کاربران خود ارتباط برقرار کنند.
  • در حالت دوم مناسب کسانی است که توسط تلگرام ریپورت میشوند. در حالت ریپورت شما نمیتوانید پیامی را از یک کاربر ناشناس دریافت کنید. پس با این ربات مشکل ریپورت اکانت شما حل میشود زیرا هم میتوانید پیام های خود را از طریق ربات دریافت کنید و هم به کاربران ناشناش پیام ارسال کنید.

در ادامه مقاله ابتدا به توضیح تعدادی اصطلاحات تخصصی مهم که برای پیش نیاز این دوره باید بلد باشید، می پردازیم. سپس جزئیات قسمت های دوره آموزشی را بیان میکنیم.

API یا رابط برنامه نویسی اپلیکیشن چیست و چه کاربردی دارد؟

API که مخفف Application Programming Interface است و ما آن را رابط برنامه نویسی اپلیکیشن می نامیم، در حقیقت یک پل ارتباطی بین شما و یک سرور ارائه دهنده خدمات است. شما میتوانید برای استفاده از خدمات برخی شرکت ها، از api آنها استفاده کنید. به اینصورت که شما به صورت مستقیم و از طریق یک Request یا درخواست، به سایت ارائه دهنده متصل میشوید. سپس یک پاسخ از سمت ارائه دهنده api، ارسال میشود و شما این پاسخ را در بستر همین API دریافت میکنید.
هر شرکت یا وبسایت میتواند برای  خود یک api بنوسید و در اختیار کاربران و پلت فرم های دیگر قرار دهد. API ها میتوانند رایگان و یا پولی باشند و این بستگی به میزبان ارائه دهنده دارد.

API تلگرام و رابطه آن با ربات تلگرام :

سایت تلگرام نیز مانند برخی سایت های دیگر، API خود را رایگان در اختیار توسعه دهندگان قرار داده است. ماژول ها و کتابخانه های بسیاری از API های خود تلگرام ساخته شده اند که ما میتونیم با بهره گیری از آنها، ربات های تلگرامی جذابی بنویسیم .
توسعه دهندگان میتوانند با زبان های برنامه نویسی نظیر پایتون ، php و … ربات های تلگرامی جذابی، خلق کنند .

چگونه یک ربات تلگرام با پایتون، برنامه نویسی کنیم؟

در این بخش از مقاله قصد دارم که قسمت های این دوره آموزشی را بصورت کلی توضیح دهم. تا شما متوجه باشید که در هر قسمت چه مطالبی بیان میشود و چند درصد از پروژه ربات پیام رسان پیش میرود.

این دوره آموزشی در 4 قسمت تدوین شده است :

قسمت اول :

شما برای نوشتن بات های تلگرامی هم میتوانید بصورت مستقیم از api تلگرام استفاده کنید و یا اینکه ماژول python-telegram-bot را در محیط برنامه نویسی خود نصب کنید. که این ماژول با استفاده از api تلگرام، کار را برای شما آسان میکند. ضمنا محیط برنامه نویسی ما در این دوره pycharm می باشد.

  • شما در ابتدا با استفاده از دستور pip install ماژول موردنیاز را نصب میکنید.
  • سپس ماژول نصب شده را داخل پروژه خود ایمپورت میکنید.
  • یک ربات از botfather میسازید و توکن دریافتی را در یک متغیر ذخیره میکنید.
  • یک بات از شی Bot میسازید و توکن را برایش ارسال میکنید.
  • سپس یک تابع برای دریافت پیام های کاربران مینویسیم. که در این تابع سه ورودی چت آی دی ربات شما، چت آی دی کاربری که قصد پیام دادن دارد و آی دی پیامی که قرار است ارسال شود، به تابع داده میشود. توضیح تمام این ورودی ها بصورت کامل در فیلم بیان شده است.

در انتهای این قسمت شما موفق به دریافت پیام یک کاربر از طریق ربات شده اید. به ادامه دوره آموزشی می پردازیم.

قسمت دوم :

در قسمت قبل موفق شدیم پیام کاربر را از طریق ربات دریافت کنیم. حالا در این قسمت میخواهیم پاسخ کاربر را از طریق ربات پیام رسان برایش ارسال کنیم.

مانند مرحله قبل یک تابع برای ارسال پیام از ادمین به کاربر مینویسیم که مشابه تابع قسمت قبل است با این تفاوت که مبدا و مقصد پیام جابجا میشود.

و این نکته را هم در نظر میگیریم که تنها ادمین، قابلیت ریپلای کردن را داشته باشد.

یکی از نکات مهم در این ربات این است که برای دریافت چت آی دی کاربری که بما پیام داده است، باید تنظیمات forward در تلگرام یوزر مربوطه everybody باشد. که این نکته بصورت کامل در ویدئو توضیح داده شده است.

در انتهای این قسمت شما ربات پیام رسان را بصورت کامل نوشته اید و قابلیت ارسال و دریافت پیام از طریق ربات کاملا قابل اجرا است.

قسمت سوم :

در این قسمت آموزش قرار دادن دکمه شیشه ای را برای شما توضیح میدهیم.

با استفاده از دیکشنری و inlineKeyboardButton میتوانیم دکمه های شیشه ای برای ربات خود بنویسیم.

سپس با استفاده از query و callbackfunction عکس العمل های پس از کلیک شدن دکمه های شیشه ای را برنامه نویسی میکنیم.

در انتهای این قسمت توانستیم برای ربات خود دکمه های شیشه ای قرار دهیم که هر کدام کار خاصی را انجام میدهند.

برای قرار دادن منو در تلگرام میتوانید مقاله «ساخت منو در ربات تلگرام» را نیز مطالعه کنید.

قسمت چهارم :

پس از ساخت ربات خود باید آن را در یک هاست یا سرور قرار دهید تا همیشه آنلاین باشد و هرکسی در هر زمانی بتواند با ربات کار کند.

در قسمت آخر دوره آموزشی ربات تلگرام با پایتون، با استفاده از سایت pythonanywhere.com که میزبانی رایگان در اختیار کاربران قرار میدهد، ربات خود را آنلاین میکنیم.

مراحل زیر را در این قسمت انجام میدهیم :

  • ساخت یک اکانت در وبسایت نام برده شده
  • آپلود فایل پروژه نوشته شده
  • فهمیدن نسخه پایتون پروژه شما
  • ایجاد یک محیط bash برای ران کردن پروژه
  • نصب ماژول های استفاده شده
  • و در آخرین مرحله ران کردن بات موردنظر

در باکس زیر نیز میتوانید تمام 4 قسمت این دوره آموزشی را بصورت یکجا دانلود کنید و درآینده ای نه چندان دور، بصورت حرفه ای، ربات های تلگرامی جذابی برای نیاز های خود و کاربران دیگر بنویسید.

امیدوارم این آموزش مورداستفاده شما قرار گیرد 🙂

با امتیاز دادن به این مقاله آموزشی، ما را از کیفیت آن مطلع کنید!

نام فایل

آموزش ساخت ربات تلگرام

حجم فابل

170 مگابایت

زمان دوره

43 دقیقه

لینک دانلود

29 Comments

  1. بسیار عالی ، کتابخانه python-telegram-bot رو شما ترجیح میدید یا telethon برای ربات نویسی تلگرام با پایتون ؟

    1. درود جناب احمدی.
      انتخاب بین این دو کتابخانه سلیقه ای هستش و بستگی به آموزشی که شما میبینید داره که از چه کتابخانه ای در آن استفاده میشه.

      1. با عرض سلام و خسته نباشید خدمت شما

        اگر ممکنه آموزشی در رابطه با ربات های CIL در زبان پایتون قرار بدید ، ممنون

        1. عرض سلام و احترام
          بله حتما در آینده ای نه چندان دور این آموزش تدوین میشه و در سایت قرار داده میشه.
          یکی از اهداف تیم ما آموزش های جامع و کامل زبان پایتون می باشد.
          تشکر از نظر شما کاربر گرامی 🙂

  2. سلام خسته نباشید.
    ممنون از ویدئو هاتون
    اگر ممکنه بخش دیتا بیس رو در ربات تلگرام توضیح بدید یا فیلم قرار بدید

    1. عرض سلام و ادب
      مقاله دیتابیس MySql در پایتون در بلاگ سایت قرار داده شده است. برای دیتابیس در ربات تلگرام، این آموزش کاملا پاسخگوی نیاز شما است.
      با احترام

    1. عرض ادب و احترام
      حتما در آینده ای نه چندان دور یک دوره آموزشی جامع زبان پایتون در سایت قرار داده میشود.
      تشکر از نظر شما 🙂

  3. واقعا پروژه محور بودن این دوره آموزشی کمک کرد بهتر بتونیم درک کنیم ، بخش Via در ربات های تلگرام چطور هستن ؟

    1. درود جناب منصوری 🙂
      تشکر از نظر شما کاربر گرامی
      این بخش مربوط به search inline می شود که به زودی آموزش آن در سایت قرار می گیرد.

  4. با سلام می خواستم اگه میشه یه توضیحی بدین در مورد اینکه handlerچه کار می کنه ،updaterو …
    در واقع می خوام بدونم که هر کدوم از دستورات چی کار میکنن.مثلا dispatcherچرا بعد updaterاومده میشه جابه جاش کرد تو خط های بعد یانه ،وظیفش چیه و…
    من تازه وارد برنامه نویسی شدم خیلی سایتارو هم چک کردم ولی نتونستم جوابا رو پیدا کنم در واقع همه میگن ما میخواهیم یه کاری کنیم که به کاربر پیام بدیم با ربات و دریافت کنیم .در فیلم های شما هم توضیح میدین که کدوم قسمت تابع کد برای دریافته ،کدوم برای ریپلای
    ولی این که دستورات اصلی دقیقا چی کار میکنن رو خیلی دوس دارم بدونم
    اگه میشه یه توضیح ماهیتی بدین .
    در واقع چرایی استفاده یه دستور رو میخام بدونم نه چگونگی رو

    1. عرض سلام و احترام
      با کمک handler شما میتونید به انواعی از دستوراتی که به سمت ربات فرستاده میشه، یک تابع را بعنوان پاسخ آن دستور اجرا کنید. handler های مختلفی هم برای message یا هم برای ducument یا هم برای callbackquery و غیره وجود دارد که با فراخوانی هر کدام از آنها به آن نوع از دستور میتوانید پاسخگو باشید.
      با کمک dispatcher میتونید handler ها رو ران کنید.
      updater هم در حقیقت هر request ی که به سمت ربات شما فرستاده میشه رو میخونه و باعث میشه که ربات شما آنلاین بمونه.
      در کل برای این مفاهیم بهتره که به پایتون هم نگاهی بندازید.
      خوندن ماژول python-telegram-bot هم کمک بزرگی میتونه به شما بکنه الیته در آینده هم آموزش خود پایتون رو در سایت قرار میدیم هم بقیه موارد مثل ماژول ها.
      تشکر از نظر شما کاربر گرامی 🙂

  5. سلام
    یه بات ساختم اما وقتی ران می کنم خطای زیر رو میده:
    telegram.error.NetworkError: urllib3 HTTPError HTTPSConnectionPool(host=’api.telegram.org’, port=443)
    با وی پی ان هم تست کردم باز هم نشد میتونید کمکم کنید؟

    1. عرض سلام و احترام
      جناب محمد ارور شما مربوط به vpn شما هستش. از یک vpn بهتر استفاده کنید.
      موفق باشید 🙂

  6. ببخشید من ران که میخوام بکنمش اخطار
    Traceback (most recent call last):
    File “C:\Users\SAM\Desktop\bot.py”, line 2, in
    from telebot.ext import *
    ModuleNotFoundError: No module named ‘telebot.ext’
    رو میده
    میگه فایلی به این نام وجود نداره
    مشکل چیه

    1. درود
      ارور شما مربوط به نصب نبودن ماژول telebot.ext می باشد. که در ویدئو همچین ماژولی معرفی نشد. پس باید عبارت from telegram.ext import * را بجای عبارت خود قرار دهید.
      پیروز باشید 🙂

  7. سلام من کد شما رو اجرا میکنم دقیقا این ارور رو میده همه کتابخونه ها هم نصب کردم مشکلش چیه؟

    valueerror:source code string cannot contain null bytes

    1. سلام دوست عزیز
      کد قرار داده شده هیچ مشکلی نداره اما برای اینکه متوجه مشکل شما بشیم باید اطلاعات بیشتری از ارور خودتون برای ما ارسال کنید.
      همچنین میتونید داخل تلگرام ب ربات پشتیبان ما پیام بدید.
      موفق باشید 🙂

  8. سلام
    اگه بخوام با ربات به کاربر فایل ارسال کنم
    برای مثال اگه پیام دریافتی 1 بود بیاد یه فایلو ارسال کنه اگه 2 بود یه فایل دیگه ارسال کنه
    چطوری میشه؟

  9. میشه توضیح بدید چه دستوری در شرط بزارم یا یک سورس ارسال کنید به ایمیل بنده

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

*

code