آموزش ۱۰۰٪ رایگان، فارسی، قدم به قدم و فوقالعاده ساده برای ساخت اولین ربات تلگرام با پایتون
مناسب برای مبتدیها | بدون نیاز به دانش قبلی | اجرا روی ویندوز و سرور ۲۴ ساعته
همه جا منو با همین آیدی پیدا میکنی ↓
- چرا این آموزش بهترینه؟
- چی یاد میگیری؟
- پیشنیازها
- ساخت ربات در تلگرام (دریافت توکن)
- نصب کتابخانهها
- ساختار پروژه
- توضیح خط به خط کد
- کد کامل bot.py
- فایل .env (امنیت توکن)
- اجرا روی ویندوز
- اجرا روی VPS یا سرور لینوکس (۲۴ ساعته)
- نکات پیشرفته و امنیت
- سوالات متداول
- کاملاً به زبان فارسی و ساده
- توضیح خط به خط (حتی مبتدیها میفهمن)
- استفاده از
.envبرای امنیت توکن (نه گذاشتن توکن در کد!) - دکمههای زیبا + اکو + خوشآمدگویی شخصیسازی شده
- آموزش اجرا روی کامپیوتر شخصی و سرور واقعی
- آماده برای ویدیو آموزشی و قرار دادن در رزومه
- ساخت ربات با BotFather
- کار با
pyTelegramBotAPI(telebot) - دکمههای زیر صفحهکلید (ReplyKeyboard)
- خوشآمدگویی با اسم کاربر
- امنیت توکن با
python-dotenv - اجرای ۲۴ ساعته روی سرور
- پروژه آماده برای گیتهاب و یوتیوب
- ویندوز، لینوکس یا مک
- پایتون ۳.۹ یا بالاتر (دانلود پایتون)
- یک حساب تلگرام
- به
@BotFatherپیام بده /newbotرو بفرست- اسم ربات رو بنویس
- یوزرنیم با
botتموم بشه (مثال:mybot_by_theesmaeil1_bot) - توکن رو کپی کن
pip install pyTelegramBotAPI python-dotenvTelegram-Bot-Tutorial/
├── bot.py
├── .env ← توکن اینجا
├── .gitignore ← داخلش بنویس: .env
├── requirements.txt ← اختیاری
└── README.md ← همین فایل
import telebot # کتابخانه اصلی ربات
from telebot.types import ReplyKeyboardMarkup, KeyboardButton # برای دکمه
from dotenv import load_dotenv # امنیت توکن
import os # دسترسی به متغیرهای محیطی
load_dotenv() # فایل .env رو لود کن
TOKEN = os.getenv("BOT_TOKEN") # توکن رو از فایل امن بگیر
bot = telebot.TeleBot(TOKEN) # ساخت ربات
# تابع ساخت منوی اصلی
def main_menu():
markup = ReplyKeyboardMarkup(resize_keyboard=True, row_width=2)
btn1 = KeyboardButton("دکمه ۱")
btn2 = KeyboardButton("دکمه ۲")
btn3 = KeyboardButton("درباره ربات")
btn4 = KeyboardButton("خداحافظ")
markup.add(btn1, btn2, btn3, btn4)
return markup
# دستور /start
@bot.message_handler(commands=['start'])
def start(message):
name = message.from_user.first_name
text = f"سلام {name} جان! به ربات حرفهای من خوش اومدی!\nیکی از دکمهها رو بزن یا هر چی دوست داری بنویس"
bot.send_message(message.chat.id, text, reply_markup=main_menu())
# دکمهها
@bot.message_handler(func=lambda m: m.text == "دکمه ۱")
def btn1(m): bot.reply_to(m, "عالی زدی دکمه ۱ رو!")
@bot.message_handler(func=lambda m: m.text == "دکمه ۲")
def btn2(m): bot.reply_to(m, "دکمه ۲ هم خیلی خفنه!")
@bot.message_handler(func=lambda m: m.text == "درباره ربات")
def about(m):
bot.reply_to(m, "ساخته شده توسط @theesmaeil1 با پایتون و pyTelegramBotAPI\nسال ۱۴۰۴ - کاملاً رایگان")
@bot.message_handler(func=lambda m: m.text == "خداحافظ")
def bye(m): bot.reply_to(m, "موفق باشی! زود برگرد")
# اکو برای بقیه پیامها
@bot.message_handler(func=lambda m: True)
def echo(m):
bot.reply_to(m, f"تو نوشتی:\n{m.text}")
# شروع ربات
print("ربات توسط theesmaeil1 روشن شد!")
bot.infinity_polling()import telebot
from telebot.types import ReplyKeyboardMarkup, KeyboardButton
from dotenv import load_dotenv
import os
load_dotenv()
TOKEN = os.getenv("BOT_TOKEN")
bot = telebot.TeleBot(TOKEN)
def main_menu():
markup = ReplyKeyboardMarkup(resize_keyboard=True, row_width=2)
markup.add("دکمه ۱", "دکمه ۲", "درباره ربات", "خداحافظ")
return markup
@bot.message_handler(commands=['start'])
def start(message):
name = message.from_user.first_name
bot.send_message(message.chat.id,
f"سلام {name} عزیز!\nبه ربات من خوش اومدی!\nدکمهها رو بزن یا هر چی دلت خواست بنویس",
reply_markup=main_menu())
@bot.message_handler(func=lambda m: m.text == "دکمه ۱")
def btn1(m): bot.reply_to(m, "دکمه ۱ خیلی خوبه!")
@bot.message_handler(func=lambda m: m.text == "دکمه ۲")
def btn2(m): bot.reply_to(m, "دکمه ۲ هم عالیه!")
@bot.message_handler(func=lambda m: m.text == "درباره ربات")
def about(m):
bot.reply_to(m, "ساخته شده توسط @theesmaeil1\npyTelegramBotAPI + python-dotenv\nکاملاً رایگان و متنباز")
@bot.message_handler(func=lambda m: m.text == "خداحافظ")
def bye(m): bot.reply_to(m, "بای بای! موفق باشی")
@bot.message_handler(func=lambda m: True)
def echo(m):
bot.reply_to(m, f"تو نوشتی:\n{m.text}")
print("ربات توسط @theesmaeil1 با موفقیت اجرا شد!")
bot.infinity_polling()BOT_TOKEN=7123456789:AAH...توکن_واقعی_خودت_اینجا...
python bot.pysudo apt update && sudo apt install screen python3-pip -y
pip install pyTelegramBotAPI python-dotenv
screen -S mybot
python3 bot.py
# Ctrl+A بعد D → ربات همیشه روشن میمونه!- هرگز توکن رو مستقیم در کد نذار
- فایل
.envرو به.gitignoreاضافه کن - از
screenیاpm2یاsystemdبرای ۲۴ ساعته ماندن استفاده کن - بعداً میتونی دکمه اینلاین، پرداخت، دیتابیس و ... اضافه کنی
سوال: ربات کار نمیکنه؟
جواب: توکن درست باشه + پایتون نصب باشه + اینترنت وصل باشه
سوال: چطور ۲۴ ساعته روشن بمونه؟
جواب: از VPS + screen یا Replit یا Railway یا Render استفاده کن
حالا وقتشه پروژهتو بسازی، ویدیو بگیری و به همه نشون بدی که چقدر حرفهای شدی!
لینک این ریپازیتوری رو به دوستات بده، استار یادت نره!
موفق باشی قهرمان!
ساخته شده با ❤️ توسط @theesmaeil1 — سال ۱۴۰۴
#ربات_تلگرام #پایتون #آموزش_پایتون #pyTelegramBotAPI #برنامه_نویسی #ربات_ساز_تلگرام
