Hướng dẫn tạo Telegram Bot bằng Pyrogram sử dụng python

 Tạo Telegram Bot bằng Pyrogram với khả năng hỗ trợ upload file lên tới 2GB sử dụng python, trong khi Bot API chỉ hỗ trợ tối đa 20MB khi gửi. Với ưu điểm từ MTProto kết nối trực tiếp đến Telegram hỗ trợ file lớn hơn Bot API với giao thức HTTP(S) và đi qua máy chủ trung gian.


Hình ảnh: https://docs.pyrogram.org/


Hướng dẫn cài đặt Pyrogram trên Windows


pip3 install -U pyrogram

pip3 install -U pyrogram tgcrypto

Kiểm tra đã cài thành công pyrogram:

>>> import pyrogram

>>> pyrogram.__version__

'x.y.z'{codeBox}


Hướng dẫn cấu hình dự án để chạy telegram bot


from pyrogram import Client

api_id = 12345

api_hash = "0123456789abcdef0123456789abcdef"

app = Client("my_account", api_id=api_id, api_hash=api_hash, bot_token = 'bot_token')

app.run(){codeBox}

Chú thích: Sau khi chạy bước này, sẽ sinh ra một file có tên "my_account.session". Từ bước này bạn có thể không cần chạy lại đoạn code này nữa. (Vẫn có thể giữ nguyên code để chạy).

bot_token: lấy từ Bot Father. {getButton} $text={Hướng dẫn tạo bot} $icon={link}

Nếu không thêm bot_token trong bước này thì telegram sẽ lấy cập nhật từ tất cả các Bot có trong tài khoản và sẽ báo lỗi lung tung. Do đó đừng quên bot_token ở bước này nhé. bot_token giúp bot chỉ nhận cập nhật từ bot mà chúng ta sử dụng token mà thôi.

Để lấy api_id api_hash thì vào link sau: https://core.telegram.org/api/obtaining_api_id

Sau đó vào link https://my.telegram.org/ và đăng nhập bằng SĐT và Mã OTP gửi về Telegram App.

Tiếp theo vào: "API development tools" để lấy api_id api_hash.


Hình ảnh file my_account.session


api_id và api_hash


Cách tạo bot đơn giản trả lời tin nhắn vừa gửi (echo bot) bằng pyrogram

Thêm đoạn code sau để nhận cập nhật từ telegram, sau đó trả lời bằng tin nhắn "Hello: chatID"

async def tuan(chatID):

    await message.reply_text(f"Hello: {chatID}")

@app.on_message(filters.private)

async def echo(client, message):

                            chatID = message.chat.id

                            await tuan(chatID)

print("Bot started") #In dòng này báo Bot sắp chạy nếu các code bên trên họa động.

app.run() #Dòng này để chạy bot.{codeBox}



Đây là kết quả của con bot telegram này

Bot trả lời tin nhắn

Code chạy trên windows


 

Hãy để lại lời nhắn hoặc thảo luận cùng chúng tớ nhé!

Post a Comment (0)
Previous Post Next Post