Media is too big
VIEW IN TELEGRAM
📹 Python Darslari | Object Oriented Dasturash. Dunder Metodlar. 1-qism →
👤 Sariq dev →
@python_core_oop
👤 Sariq dev →
@python_core_oop
Media is too big
VIEW IN TELEGRAM
📹 Python Darslari | Object Oriented Dasturash. Dunder Metodlar. 2-qism →
👤 Sariq dev →
@python_core_oop
👤 Sariq dev →
@python_core_oop
Forwarded from MohirDev.uz
Ramazon muborak!
Bu oy har safargidan-da manfaatli o‘tsin. Ilmingiz ziyoda, ibodatlaringiz qabul bo‘lsin.
@mohirdev
Bu oy har safargidan-da manfaatli o‘tsin. Ilmingiz ziyoda, ibodatlaringiz qabul bo‘lsin.
@mohirdev
👍2
Telegram bot haqida boshlang‘ich tushuncha
📌 Telegram bot nima?
Telegram bot – bu Telegram ichida avtomatlashtirilgan vazifalarni bajara oladigan dastur. U foydalanuvchilarga turli xizmatlar ko‘rsatish, ma’lumot yetkazish, buyurtmalarni qabul qilish, foydalanuvchi bilan muloqot qilish kabi ishlarni amalga oshiradi. Botlar odatda ma’lum bir buyruqlar yoki tugmalar yordamida boshqariladi.
✅ Telegram botning afzalliklari
✨ Tezkorlik – Foydalanuvchilarga tez va qulay xizmat ko‘rsatish imkonini beradi.
🤖 Avtomatlashtirish – Takroriy ishlarni bot bajarib, inson resurslarini tejaydi.
📱 Platformadan mustaqillik – Har qanday qurilmadan foydalanish mumkin (telefon, kompyuter).
🔗 Integratsiya – CRM, ERP, API va boshqa xizmatlar bilan bog‘lanishi mumkin.
🔒 Xavfsizlik – Telegram’ning kuchli shifrlash tizimi tufayli ma’lumotlar xavfsiz saqlanadi.
🔍 Telegram bot turlari
📢 Axborot botlari – Yangilik, ob-havo, valyuta kurslari va boshqa ma’lumotlarni yetkazib beruvchi botlar.
🛒 Savdo va to‘lov botlari – Internet-do‘konlar, xizmatlar buyurtma qilish va to‘lovlarni amalga oshirish uchun ishlatiladigan botlar.
💬 Chatbotlar – Mijozlarga xizmat ko‘rsatish va savollarga javob berish uchun.
🎮 Ko‘ngilochar botlar – O‘yin botlari, mem botlari, musiqiy botlar va shunga o‘xshash xizmatlar.
📚 Ta’lim botlari – Online kurslar, testlar va dars materiallarini taqdim etuvchi botlar.
🔄 Avtomatlashtirish botlari – Ish jarayonlarini yengillashtirish uchun qo‘llaniladi (masalan, ish jadvali yoki eslatmalar botlari).
🛠 Telegram bot yaratish uchun texnologiyalar
💻 Dasturlash tillari:
🐍 Python (aiogram, pyTelegramBotAPI)
🟢 JavaScript (telegraf.js, node-telegram-bot-api)
🐘 PHP (MadelineProto, Telegram Bot API)
☕️ Java (TelegramBots API)
🔵 C# (.NET Telegram.Bot)
🐹 Go (tgbot)
🗄 Ma’lumotlar bazalari: PostgreSQL, MySQL, MongoDB, Firebase
☁️ Xosting xizmatlari: Heroku, Railway, AWS, Render, Google Cloud
©️@python_core_oop
📌 Telegram bot nima?
Telegram bot – bu Telegram ichida avtomatlashtirilgan vazifalarni bajara oladigan dastur. U foydalanuvchilarga turli xizmatlar ko‘rsatish, ma’lumot yetkazish, buyurtmalarni qabul qilish, foydalanuvchi bilan muloqot qilish kabi ishlarni amalga oshiradi. Botlar odatda ma’lum bir buyruqlar yoki tugmalar yordamida boshqariladi.
✅ Telegram botning afzalliklari
✨ Tezkorlik – Foydalanuvchilarga tez va qulay xizmat ko‘rsatish imkonini beradi.
🤖 Avtomatlashtirish – Takroriy ishlarni bot bajarib, inson resurslarini tejaydi.
📱 Platformadan mustaqillik – Har qanday qurilmadan foydalanish mumkin (telefon, kompyuter).
🔗 Integratsiya – CRM, ERP, API va boshqa xizmatlar bilan bog‘lanishi mumkin.
🔒 Xavfsizlik – Telegram’ning kuchli shifrlash tizimi tufayli ma’lumotlar xavfsiz saqlanadi.
🔍 Telegram bot turlari
📢 Axborot botlari – Yangilik, ob-havo, valyuta kurslari va boshqa ma’lumotlarni yetkazib beruvchi botlar.
🛒 Savdo va to‘lov botlari – Internet-do‘konlar, xizmatlar buyurtma qilish va to‘lovlarni amalga oshirish uchun ishlatiladigan botlar.
💬 Chatbotlar – Mijozlarga xizmat ko‘rsatish va savollarga javob berish uchun.
🎮 Ko‘ngilochar botlar – O‘yin botlari, mem botlari, musiqiy botlar va shunga o‘xshash xizmatlar.
📚 Ta’lim botlari – Online kurslar, testlar va dars materiallarini taqdim etuvchi botlar.
🔄 Avtomatlashtirish botlari – Ish jarayonlarini yengillashtirish uchun qo‘llaniladi (masalan, ish jadvali yoki eslatmalar botlari).
🛠 Telegram bot yaratish uchun texnologiyalar
💻 Dasturlash tillari:
🐍 Python (aiogram, pyTelegramBotAPI)
🟢 JavaScript (telegraf.js, node-telegram-bot-api)
🐘 PHP (MadelineProto, Telegram Bot API)
☕️ Java (TelegramBots API)
🔵 C# (.NET Telegram.Bot)
🐹 Go (tgbot)
🗄 Ma’lumotlar bazalari: PostgreSQL, MySQL, MongoDB, Firebase
☁️ Xosting xizmatlari: Heroku, Railway, AWS, Render, Google Cloud
©️@python_core_oop
Python developer sifatida quyidagi kutubxonalar orqali telegram bot yaratsak bo'ladi:
🔥 Eng tavsiya qilinadigan kutubxona:
✅ aiogram – Asinxron (async) ishlaydi, tez va samarali. Katta botlar uchun eng yaxshi variant.
🛠 Alternativ variantlar:
🔹 pyTelegramBotAPI (telebot) – Oddiy botlar uchun eng oson va tushunarli kutubxona.
🔹 python-telegram-bot – Rasmiy API’ga yaqin variant, async rejimni ham qo‘llab-quvvatlaydi.
📌 Qaysi birini tanlash kerak?
Kichik botlar yoki boshlang‘ich daraja uchun: pyTelegramBotAPI
Katta botlar, inline tugmalar, keyboard va tezkor ishlash uchun: aiogram
Rasmiy API’ga yaqin ishlash va kengaytirilgan imkoniyatlar uchun: python-telegram-bot
©️@python_core_oop
🔥 Eng tavsiya qilinadigan kutubxona:
✅ aiogram – Asinxron (async) ishlaydi, tez va samarali. Katta botlar uchun eng yaxshi variant.
pip install aiogram
🛠 Alternativ variantlar:
🔹 pyTelegramBotAPI (telebot) – Oddiy botlar uchun eng oson va tushunarli kutubxona.
pip install pyTelegramBotAPI
🔹 python-telegram-bot – Rasmiy API’ga yaqin variant, async rejimni ham qo‘llab-quvvatlaydi.
pip install python-telegram-bot
📌 Qaysi birini tanlash kerak?
Kichik botlar yoki boshlang‘ich daraja uchun: pyTelegramBotAPI
Katta botlar, inline tugmalar, keyboard va tezkor ishlash uchun: aiogram
Rasmiy API’ga yaqin ishlash va kengaytirilgan imkoniyatlar uchun: python-telegram-bot
©️@python_core_oop
Qaysi kutubxona bilan bot yaratishni oʻrganamiz:
Anonymous Poll
75%
Aiogram
25%
pyTelegramBotAPI
0%
python-telegram-bot
Telegram botlari 5 turga bo‘linadi:
1️⃣ User Bots – foydalanuvchi bilan ishlovchi botlar 🤖
2️⃣ Channel Bots – kanallar bilan ishlovchi botlar 📢
3️⃣ Group Bots – guruhlarni bilan ishlovchi botlar 🔧
4️⃣ Web Bots – veb-sahifalar bilan ishlovchi botlar 🌐
5️⃣ Payment Bots – to‘lov va e-commerce botlari 💳
📌 Darsni yaxshi o'zlashtirib borsalaringiz oxirida paymentni o'rgataman, soqqa qilasizlar 😅.
©️@python_core_oop
1️⃣ User Bots – foydalanuvchi bilan ishlovchi botlar 🤖
2️⃣ Channel Bots – kanallar bilan ishlovchi botlar 📢
3️⃣ Group Bots – guruhlarni bilan ishlovchi botlar 🔧
4️⃣ Web Bots – veb-sahifalar bilan ishlovchi botlar 🌐
5️⃣ Payment Bots – to‘lov va e-commerce botlari 💳
📌 Darsni yaxshi o'zlashtirib borsalaringiz oxirida paymentni o'rgataman, soqqa qilasizlar 😅.
©️@python_core_oop
👍2
Muslim dasturchilar uchun profil rasmi, siz Amazonda ishlamassiz lekin sizda Ramazon bor. 😊
©@python_core_oop
©@python_core_oop
🔹 1-qadam: Aiogram kutubxonasini o‘rnatamiz
Birinchi navbatda aiogram kutubxonasini o‘rnatamiz:
🔹 2-qadam: BotFather orqali bot yaratamiz
1️⃣ @BotFather ni Telegram’da oching
2️⃣ /newbot buyrug‘ini yozing
3️⃣ Botga nom va username bering (oxiri bot bilan tugashi kerak)
4️⃣ BotFather sizga bot token beradi – buni saqlab qo‘ying!
3-qadam: Dastlabki kodlar
📌 Quyidagi kodni yozing va botni ishga tushuring! 🚀
📌 Natija:
✅ /start yozsangiz, bot sizga salomlashish xabarini yuboradi!
©️@python_core_oop
Birinchi navbatda aiogram kutubxonasini o‘rnatamiz:
pip install aiogram
🔹 2-qadam: BotFather orqali bot yaratamiz
1️⃣ @BotFather ni Telegram’da oching
2️⃣ /newbot buyrug‘ini yozing
3️⃣ Botga nom va username bering (oxiri bot bilan tugashi kerak)
4️⃣ BotFather sizga bot token beradi – buni saqlab qo‘ying!
3-qadam: Dastlabki kodlar
📌 Quyidagi kodni yozing va botni ishga tushuring! 🚀
from aiogram import Bot, Dispatcher, types
from aiogram.utils import executor
TOKEN = "YOUR_BOT_TOKEN" # BotFather bergan tokenni shu yerga qo'ying
bot = Bot(token=TOKEN)
dp = Dispatcher(bot)
@dp.message_handler(commands=['start'])
async def send_welcome(message: types.Message):
await message.reply("👋 Assalomu alaykum! Men @python_core_oop kanali o'rganuvchising aiogram bilan yozlgan botiman!")
if __name__ == '__main__':
executor.start_polling(dp, skip_updates=True)
📌 Natija:
✅ /start yozsangiz, bot sizga salomlashish xabarini yuboradi!
©️@python_core_oop
🔝 Endi yuqoridagi kodni tushunishga harakat qilamiz:
🔹 1. Bot – Botni ishga tushirish uchun kerak
🤖 Bot – bu sizning Telegram’dagi avtomatlashtirilgan yordamchingiz.
🛠 Bot klassi botga buyruqlar berish va xabarlar jo‘natish uchun ishlatiladi.
🔹 2. Dispatcher (dp) – Xabarlarni boshqaradi
📢 Dispatcher – bu botga kelgan xabarlarni boshqaruvchi tizim.
🔄 U botga kelgan xabarlarni filtrlaydi va tegishli funksiya ga yo‘naltiradi.
🔹 3. Message Handler – Xabarlarni qabul qiladi
📩 Message Handler – botga kelgan xabarlarni ushlaydi va unga javob qaytaradi.
👉 commands=['start'] – /start buyrug‘iga javob berishini bildiradi.
🔹 4. Types – Telegramdagi obyektlar (obyekt nimaligini python oopda o'tgandik)
📌 Types – bu Telegram botda ishlatiladigan xabarlar, tugmalar, rasm, video va boshqa obyektlar uchun tayyor modullar.
✅ Masalan:
types.Message → oddiy xabar
types.ReplyKeyboardMarkup → tugmalar (keyincalik o'tamiz)
types.InlineKeyboardMarkup → inline tugmalar (keyincalik o'tamiz)
🔹 5. Executor – Botni ishga tushiradi
⚡️ Executor – bu botni ishga tushiruvchi mexanizm.
🔄 start_polling(dp) – botning ishlashini boshlaydi.
📌 skip_updates=True → botni o‘chirilgan vaqtida kelgan eski xabarlarni o‘tkazib yuboradi.
🎯 Xulosa
📌 Aiogram bilan bot yaratish uchun 5 ta asosiy tushuncha:
✅ Bot – botni yaratadi
✅ Dispatcher – xabarlarni boshqaradi
✅ Message Handler – xabarlarni qabul qiladi
✅ Types – xabar va tugmalar uchun obyektlar
✅ Executor – botni ishga tushiradi
©️@python_core_oop
🔹 1. Bot – Botni ishga tushirish uchun kerak
bot = Bot(token="YOUR_BOT_TOKEN")
🤖 Bot – bu sizning Telegram’dagi avtomatlashtirilgan yordamchingiz.
🛠 Bot klassi botga buyruqlar berish va xabarlar jo‘natish uchun ishlatiladi.
🔹 2. Dispatcher (dp) – Xabarlarni boshqaradi
dp = Dispatcher(bot)
📢 Dispatcher – bu botga kelgan xabarlarni boshqaruvchi tizim.
🔄 U botga kelgan xabarlarni filtrlaydi va tegishli funksiya ga yo‘naltiradi.
🔹 3. Message Handler – Xabarlarni qabul qiladi
@dp.message_handler(commands=['start'])
async def send_welcome(message: types.Message):
await message.reply("👋 Assalomu alaykum! Men @python_core_oop kanali o'rganuvchising aiogram bilan yozlgan botiman!")
📩 Message Handler – botga kelgan xabarlarni ushlaydi va unga javob qaytaradi.
👉 commands=['start'] – /start buyrug‘iga javob berishini bildiradi.
🔹 4. Types – Telegramdagi obyektlar (obyekt nimaligini python oopda o'tgandik)
from aiogram import types
📌 Types – bu Telegram botda ishlatiladigan xabarlar, tugmalar, rasm, video va boshqa obyektlar uchun tayyor modullar.
✅ Masalan:
types.Message → oddiy xabar
types.ReplyKeyboardMarkup → tugmalar (keyincalik o'tamiz)
types.InlineKeyboardMarkup → inline tugmalar (keyincalik o'tamiz)
🔹 5. Executor – Botni ishga tushiradi
from aiogram.utils import executor
executor.start_polling(dp, skip_updates=True)
⚡️ Executor – bu botni ishga tushiruvchi mexanizm.
🔄 start_polling(dp) – botning ishlashini boshlaydi.
📌 skip_updates=True → botni o‘chirilgan vaqtida kelgan eski xabarlarni o‘tkazib yuboradi.
🎯 Xulosa
📌 Aiogram bilan bot yaratish uchun 5 ta asosiy tushuncha:
✅ Bot – botni yaratadi
✅ Dispatcher – xabarlarni boshqaradi
✅ Message Handler – xabarlarni qabul qiladi
✅ Types – xabar va tugmalar uchun obyektlar
✅ Executor – botni ishga tushiradi
©️@python_core_oop