بله | کانال آموزش بلتون | ساخت بات پایتون | کد نویسی | balethon learn | balecore | python bot | code
عکس پروفایل آموزش بلتون | ساخت بات پایتون | کد نویسی | balethon learn | balecore | python bot | codeآ

آموزش بلتون | ساخت بات پایتون | کد نویسی | balethon learn | balecore | python bot | code

۳۱۴عضو
#balethon چیست؟
چرا #پایتون؟
کدنویسی پایتون یکی از روش‌های محبوب و قدرتمند برای توسعه نرم‌افزار است. کتابخانه balethon یک ابزار مفید برای ساخت ربات‌های پیام‌رسان بله است که امکان هرگونه کدنویسی را فراهم می‌کند. با استفاده از این کتابخانه، می‌توانید به سادگی ربات‌هایی با قابلیت‌های مختلف بسازید.🟢 @balethon_learn 🟢

۱۲:۴۴

Visual Studio Code یا به اختصار #VSCode ، یکی از محبوب‌ترین محیط‌های توسعه یکپارچه (IDE) برای برنامه‌نویسان است که به دلیل امکانات گسترده و قابلیت‌های فراوان خود محبوبیت زیادی پیدا کرده است. در اینجا نحوه نصب VS Code و راه‌اندازی آن برای کدنویسی با #پایتون را توضیح می‌دهیم:
دانلود و نصب VS Code:
به وبسایت رسمی https://code.visualstudio.com بروید.
نسخه مناسب برای سیستم‌عامل خود (ویندوز، مک، لینوکس) را دانلود کنید.
فایل دانلود شده را اجرا کرده و مراحل نصب را دنبال کنید.
نصب افزونه Python:
پس از نصب و اجرای VS Code، بر روی آیکون #Extension در سمت چپ کلیک کنید (یا از کلیدهای میانبر Ctrl+Shift+X استفاده کنید).
در کادر جستجو عبارت "Python" را وارد کنید و افزونه "Python" که توسط Microsoft توسعه داده شده است را نصب کنید.
نصب پایتون:
اگر پایتون را نصب نکرده‌اید، به وبسایت رسمی Python بروید و آخرین نسخه را دانلود و نصب کنید.
مطمئن شوید که در هنگام نصب گزینه "Add Python to PATH" را فعال کنید.
راه‌اندازی محیط پایتون در VS Code:
یک فایل جدید با پسوند .py در VS Code ایجاد کنید.
در نوار وضعیت (Status Bar) در پایین صفحه، بر روی نسخه پایتون کلیک کنید و مسیر نصب پایتون خود را انتخاب کنید.
برای اجرای کد پایتون، در بخش undefined run and debug را بزنید.
🟢 @balethon_learn 🟢

۱۲:۴۹

thumbnail
#بلتونبلتون یک کتابخانه برای ساختن بات در پیام‌رسان بله با زبان برنامه نویسی پایتون است
امکانات کلیدی:آسانرابط کاربری مختصر و سطح بالاسریعبهینه و دارای پشتیبانی از برنامه نویسی Asynchronousمستند سازی شدهدر مستندات به طور جامع و عمیق به آموزش بلتون پرداخته شدهکامیونیتیانجمن مخصوص پرسش و پاسخ فعال و دوستانهمعماریپشتیبانی از معماری های تابع گرا علاوه بر شیء گراقدرتمندAPI پیام‌رسان بله را پوشش میدهد و ابزارهای مفیدی برای ساده‌سازی کار شما داردانعطاف‌پذیرغیرقابل منسوخ شدن و آماده برای پاسخ های غیرمنتظره از سمت وب سرویس پیام‌رسان بلهشهودیدارای type-hint و پشتیبانی عالی از ادیتورهاتوسعه پذیرهمه سیستم های بلتون به سادگی قابل توسعه هستند
نصب آن:این متن را در ترمینال یا cmd خود بنویسید:
 pip install Balethon 

لینک هاصفحه گیتهابصفحه پایپیکانال اخبار در بلهگروه چت در بله
حال در کد های خود میتوانید از بلتون استفاده کنید. چگونه؟ ما اینجاییم تا به شما آموزش دهیم!
🟢 @balethon_learn 🟢

۱۲:۵۸

نمونه ساده #بلتونکد یک بات که هر پیامی به آن بدهید، با متن Hello جواب میدهد

from balethon import Client

bot = Client("TOKEN")  # Replace "TOKEN" with your actual token here


@bot.on_message()
async def greet(message):
    await message.reply("Hello")

bot.run()

🟢 @balethon_learn 🟢

۱۳:۰۰

thumbnail
ساخت ربات در پیام‌رسان بله با استفاده از BotFather و گرفتن توکن آن فرآیندی ساده است که می‌توانید با مراحل زیر انجام دهید:
باز کردن BotFather:
ابتدا پیام‌رسان بله را باز کنید و وارد @botfather شوید.
ایجاد ربات جدید:
در چت با BotFather، دستور /start را ارسال کنید تا لیست دستورات قابل استفاده نمایش داده شود.
برای ایجاد ربات جدید، دستور "ساخت بازوی جدید" را ارسال کنید.
انتخاب نام برای ربات
سپس باید نام کاربری (username) برای ربات انتخاب کنید که باید به "bot" ختم شود (مثلاً "MyAwesomeBot_bot").
دریافت توکن ربات:
پس از انتخاب نام و نام کاربری، BotFather یک پیام شامل توکن ربات به شما می‌دهد. این توکن یک رشته طولانی از حروف و اعداد است که برای ارتباط با API پیام‌رسان بله استفاده می‌شود.
حتماً این توکن را ذخیره کنید، زیرا برای برنامه‌نویسی و تعامل با ربات از طریق کد پایتون و کتابخانه Balethon به آن نیاز دارید و به هیچ وجه آن را در اختیار دیگران قرار ندهید.
حالا ابتدای همه ی کد هایتان باید

from balethon import Client

bot = Client("TOKEN")
را بگذارید و توکن خود را با TOKEN جابجا کنید
🟢 @balethon_learn 🟢

۱۳:۰۹

لیست بهترین #extension های مورد نیاز برای کدنویسی بات در #VSCode
.net install tool🟡
cody🟡
debugger for firefox🟢
docker🟢
git extension pack🟡
git history🟡
github codespase🟡
github copilot🟢
github copilot chat🟢
gitgnore🟡
gitlens🟡
indent-rainbow🟡
intellicode🟡
intellicode api usage examples🟡
intellicode completions🟡
intellicode insider🟡
jinja🟡
kite theme🟡
live share🟡
live code for python🟡
markdownlint🟡
microsoft edge tools for vscode🟢
microsoft office add-ins development kits🟡
mintlify doc writer for python🟡
open in github🟡
project manager🟡
pylance🟢
python by microsoft🟢
python debugger🟢
python development extensions pack🟡
python environment manager🟡
python extension pack🟡
python indent🟡
python resourse monitor🟡
python test explorer🟡
python type hint🟡
python-snippets🟡
test adapter converter🟡
test explorer ui🟡
wolf🟡
github actions🟡

🟡: پیشنهادی🟢: اجباری
🟢 @balethon_learn 🟢

۱۳:۳۶

#بلتون شهودی است!اگر از یک کد ادیتور خوب ( مثلا #VSCode ) استفاده کنید که از زبان برنامه نویسی پایتون به خوبی پشتیبانی میکنه حتماً موقع کدنویسی با بلتون میتونه به شما کمک کنه
دلیلش اینه که type-hint ها در کد بلتون به کار گرفته شدن، که به ادیتور اجازه میدن بهتر کد رو درک کنه و بتونه موقع کدنویسی پیشنهادهای بهتری به شما نشون بده
تذکر در کالبکاما یه جاهایی هست که ممکنه ادیتور نتونه پیشنهادهای خوبی به شما ارائه بده مثلاً این کد رو در نظر بگیرید

from balethon import Client

bot = Client("TOKEN")


@bot.on_message()
async def answer_message(client, message):
    message.
    client.

اینجا ما وقتی بنویسیم message. یا client. ادیتور پیشنهاد خوبی به ما نمیده بخاطر اینکه نمیدونه این message و client چه نوع آبجکت هایی هستن
راه حلش اینه که به این شکل بنویسیم

from balethon import Client
from balethon.objects import Message

bot = Client("TOKEN")


@bot.on_message()
async def answer_message(client: Client, message: Message):
    message.
    client.

اینجا ما خودمون اومدیم صرفاً مشخص کردیم که client یک آبجکت از نوع Client و message یک آبجکت از نوع Message هست و با این کار ادیتور متوجه نوع این آبجکت ها میشه و میتونه به ما پیشنهادهای مفیدی موقع کد زدن بده
منبع: https://balethon.ir/posts/balethon-is-intuitive/🟢 @balethon_learn 🟢

۱۳:۵۵

استفاده از سرویس هاتوی این مقاله استفاده از سرویس های بله آموزش داده میشه
نمونه سازی Clientاول باید Client رو از داخل بلتون فراخوانی کنیم و یه Client بسازیممن Client ساخته شده خودم رو توی متغیر bot ذخیره میکنم

from balethon import Client

bot = Client("TOKEN")  # Replace "TOKEN" with your actual token here
باید «TOKEN» رو با توکن بات خودتون عوض کنید


اتصال به بلهحالا قبل از هر کاری اول باید باتمون رو به بله وصل کنیم

bot.connect()

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

me = bot.get_me()
print(me)

یا یک پیامی به یک نفر بفرستیم

bot.send_message("@username", "Hello")  # Replace "@username" with your actual username here
باید «@username» رو با نام کاربری مورد نظر خودتون عوض کنید


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

bot.disconnect()

جمع بندییعنی برای مثال کد کامل ما اینجوری میشه

from balethon import Client

bot = Client("TOKEN")  # Replace "TOKEN" with your actual token here

bot.connect()
bot.send_message("@username", "Hello")  # Replace "@username" with your actual username here
bot.disconnect()

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

from balethon import Client

bot = Client("TOKEN")  # Replace "TOKEN" with your actual token here

with bot:
    bot.send_message("@username", "Hello")  # Replace "@username" with your actual username here
وقتی این شکلی انجام بدیم دیگه نیاز نیست خودمون اتصال با بله رو وصل یا قطع کنیم و خودکار انجام میشهاین روش پیشنهاد میشه چون حتی اگر کد به طور ناگهانی متوقف بشه قطع شدن ارتباط تضمینیه


برنامه نویسی Asynchronousیه کار دیگه که میتونیم بهتر انجام بدیم اینه که به صورت Asynchronous کد بزنیم

import asyncio

from balethon import Client

bot = Client("TOKEN")  # Replace "TOKEN" with your actual token here


async def main():
    async with bot:
        await bot.send_message("@username", "Hello")  # Replace "@username" with your actual username here


asyncio.run(main())
این روش پیشنهاد میشه چون از خاصیت برنامه نویسی Asynchronous بهره میگیریم و میتونه سرعت کدمون رو ببره بالااگر با برنامه نویسی Asynchronous آشنایی ندارید میتونید با همون روش ساده کد بزنید و مشکلی نداره
اگر با برنامه نویسی Asynchronous آشنا باشید میدونید که یک کد Async باید حتما یک فانکشن ورودی داشته باشه_```

_اگر از برنامه نویسی Asynchronous استفاده میکنید تمام سرویس های بله در بلتون رو هم باید به صورت Async فراخوانی کنید

ولی کدمون هنوز هم قابل بهبود دادن هست

from balethon import Client

bot = Client("TOKEN")  # Replace "TOKEN" with your actual token here


async def main():
    await bot.send_message("@username", "Hello")  # Replace "@username" with your actual username here


bot.run(main())
اینجا به‌جای asyncio.run از bot.run استفاده کردیم تا کدمون خلاصه تر بشهاینجوری هم خود بلتون قبل از اجرای main بات رو برای ما به بله وصل میکنه و بعد از تموم شدن کار اتصال رو قطع میکنهتوی این روش هم مثل کانتکست منیجر قطع ارتباط خودکار تضمینیه
منبع: https://balethon.ir/posts/using-services/🟢 @balethon_learn 🟢

۱۴:۰۱

دوستان اگه میخواید اطلاعات کامل کد های بات های بله رو داشته باشید https://docs.bale روچک کنید🟢 @balethon_learn 🟢

۱۴:۱۷

undefinedundefined دوستان برای ساخت بات در بله شما نیاز به کتابخانه دارید که بهترین کتابخانه های بله اینهاست!با استفاده از این کتابخانه ها نیازی به استفاده از کتابخانه‌های مخصوص تلگرام نیست و قابلیت‌های بسیاری در اختیار توسعه‌دهندگان بازو قرار خواهد گرفت.
undefined آدرس GitHub این کتابخانه‌ها undefined
undefined https://github.com/SajjadAlipour2006/Balethon ( #بلتون)
undefined https://github.com/python-bale-bot/python-bale-bot (پایتون بله)
undefined https://github.com/balecore (بله کور)
undefined@balesharp (بله شارپ)
🟢 @balethon_learn 🟢

۱۶:۴۵

همایتا کمه

۱۵:۵۰

undefinedنکته:
برای چاپ یک متن با متغییر در #پایتون چندین روش وجود دارد که رایج ترین آنها اینهاست:
1.این روش خیلی راحته و معمولا مبتدی ها استفاده میکنن:

print('man alireza hastam va' , age , 'salame')


2.این روش معمولا استفاده نمیشه:

print('man alireza hastam va %i salame' %age)
3.این روش بین حرفه ای ها خیلی رایجه:

print('man alireza hastam va {} salame'.format(age))

4.این روش توی کدنویسی های بلتون هم خیلی استفاده میشه:

print(f'man alireza hastam va { age } salame')
توجه: پرینت توی بات های بله مفههومی نداره و این مثال فقط برای آشنایی با روش ها بود

🟢 @balethon_learn 🟢

۱۶:۲۸

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

@bot.on_message(private & text)
هرپیامی که به بات در پی وی ارسال شد

async def echo(message):
    await message.reply(message.text)
همون پیام رو بهش ریپلای کنه:

@bot.on_message(private & text)
async def echo(message):
    await message.reply(message.text)
و ایمپورت هارو انجام میدیم و توکن بات رو با کلاینت تنظیم میکنیم و ران میکنیم و:

from balethon import Client
from balethon.conditions import private, text

bot = Client("TOKEN")


@bot.on_message(private & text)
async def echo(message):
    await message.reply(message.text)


bot.run()

🟢 @bot_learn 🟢

۱۶:۴۶

undefinedنکته:
چرا ما ایمپورت هارو به جای

import balethon
از ایمپورت های مثل:

from balethon import client
استفاده میکنیم؟
معنی کد اول اینه که کل کتابخانه بلتون رو ایمپورت میکنه و بسیار سنگینه، برای همین ما یه بخشی از کد رو که نیاز داریم رو ایمپورت میکنیم تا الکی همچیو ایمپورت نکرده باشیم. (یعنی تو کد دو جای اینکه پایتون همه ی کتابخونرو لود کنه فقط کلاینت رو لود میکنه)
توجه: ایمپورت client اجباریه چون باید توکن بات رو بهش متصل کنیم تا دستور ها روی بات اجرا بشه
🟢 @bot_learn 🟢

۱۶:۵۱

بازارسال شده از آموزش بلتون | ساخت بات پایتون | کد نویسی | balethon learn | balecore | python bot | code
undefinedundefined دوستان برای ساخت بات در بله شما نیاز به کتابخانه دارید که بهترین کتابخانه های بله اینهاست!با استفاده از این کتابخانه ها نیازی به استفاده از کتابخانه‌های مخصوص تلگرام نیست و قابلیت‌های بسیاری در اختیار توسعه‌دهندگان بازو قرار خواهد گرفت.
undefined آدرس GitHub این کتابخانه‌ها undefined
undefined https://github.com/SajjadAlipour2006/Balethon ( #بلتون)
undefined https://github.com/python-bale-bot/python-bale-bot (پایتون بله)
undefined https://github.com/balecore (بله کور)
undefined@balesharp (بله شارپ)
🟢 @balethon_learn 🟢

۴:۳۷

بازارسال شده از کانال بتا بازو
به کانال «بتا بازو» خوش اومدیدundefined
با عضویت در کانال بتا بازو، شما جزو اولین افرادی هستین که قبل از همه به قابلیت‌های جدید بازو دسترسی دارین! undefinedاین کانال مخصوص توسعه دهندگان بازو و همینطور افرادیه که زیاد با بازوها سر و کار دارند.با استفاده از نسخه بتا می‌تونین زودتر از بقیه امکانات جدید رو تجربه و تست کنین و با بیان کردن مشکلات و پیشنهاداتتون، در بهتر شدن بازوها نقش داشته باشین undefinedundefined
این نسخه می‌تونه مربوط به اندروید وب یا api بکند بازو باشه.
undefined عضویت در کانال بتا بازوundefined عضویت در گروه بتا بازو (برای ارسال بازخورد)

۸:۴۹

بازارسال شده از BalethonPlus
بلتون (Balethon) که یک کتابخونه عالی برای توسعه بازو در بله با زبان برنامه‌نویسی پایتون هست، متاسفانه بنا به دلایلی نامعلوم توسعه ش توسط سازندش یعنی اقای سجاد (@sajiminer0) تا مدت نامعلومی متوقف شده.حالا ما برای اینکه بلتون از تغییرات API بله جا نمونه و جذابیتش رو از دست نده، توسعه ش رو (برای مدتی) بدست گرفتیم!
برای نصب یا بروزرسانی بلتون:نصب کردن فورک بلتون:pip uninstall Balethonpip install BalethonPlus
تغییرات و قابلیت ها:- رفع مشکل متد get_chat()- اضافه شدن متد answer_callback_query() + شورتکاتش answer() به شی CallbackQuery- اضافه شدن متد answer_pre_checkout_query() + شورتکاتش answer() به شی PreCheckoutQuery- اضافه شدن پارامتر copy_text به شی InlineKeyboardButton و شی CopyTextButton- اضافه شدن متد inquire_transaction() و شورتکاتش inquiry() به شی های PreCheckoutQuery و SuccessfulPyament- اضافه شدن کاندیشن restrication برای ایجاد محدودیت زمانی و جلو گیری از اسپم- اضافه شدن enum ها- اضافه شدن متد های send_otp() برای ارسال رمز یکبار مصرف ازطریق سامانه سفیر بله و passcode_generate() برای ساختن کد یکبار مصرف- اضافه شدن متد create_invoice_link()- اضافه شدن پراپرتی answer_supported به ابجکت CallbackQuery - اضافه شدن متد ask_review()- اضافه شدن ابجکت های InputMediaDocument, InputMediaAudio و InputMediaAnimation- رفع مشکل آبجکت ReplyKeyboardRemove- اضافه شدن متد edit_message_reply_markup()- اضافه شدن ابجکت WebAppData
ارتباط با ما:@storm_2004
@BalethonPlus

۷:۱۰

بازارسال شده از هوش مصنوعی

در حال حاضر نمایش این پیام پشتیبانی نمی‌شود.