digital report
  • TEKNOLOJİ
  • DRPRO
  • GİRİŞİM
  • E-TİCARET
  • FINTECH
  • MARKA
  • GÜVENLİK
  • REHBER
  • DERGİ
  • FORUM
Sonuç bulunamadı
Tüm sonuçları gör
digital report
Digital Report Rehber

Pyhton 3 ile basit Telegram botu yapma

Yazar: Nihat Bilge
14 Ocak 2021
Kategori: Rehber
A A
Pyhton 3 ile basit Telegram botu yapma
Facebook'ta PaylaşTwitter'da PaylaşLinkedIn'de PaylaşWhatsApp'ta PaylaşTelegram'da Paylaş

İçindekiler

  • Adım adım Pyhton 3 ile basit Telegram botu yapma: Nasıl başlayacaksınız?
    • Kitaplıkları yükleyin
    • Programı yazmak
  • Kendi Telegram botunuzu yarattınız!
  • Telegram botununun hosting ihtiyacı

Yeni başlayanlar için Pyhton 3 ile basit Telegram botu yapma süreçlerini anlattık. Eğer aktif bir Telegram kullanıcısıysanız, daha önce bir chatbot ile görüşme yapmış olabilirsiniz. Özelleştirme noktasında inanılmaz yönleri ile Telegram botları birçok avantaj sunuyor. Görevleri otomatikleştirmek, sohbet gruplarında birtakım verileri anında herkesle paylaşmak gibi yönleriyle Telegram botları oldukça popüler.

Telegram’da bot geliştirmek, bu süreçlere çok hakim olmayanlar için göz korkutucu gelse de aslında öyle değil. Doğru bir planlama ve çalışma ile, Telegram botunuzu bir saatten kısa sürede kurabilir ve çalıştırabilirsiniz. İnternetten kedi fotoğraflarını getiren basit bir Telegram botunun nasıl oluşturulduğunu anlattık.

  • Telegram ve Signal 2021’in ilk kazananları oldu
  • Telegram grup ve kanal bulma [Nasıl Yapılır]
  • Discord ve Telegram için en iyi müzik botları

Adım adım Pyhton 3 ile basit Telegram botu yapma: Nasıl başlayacaksınız?

Bu çalışmada dil olarak Pyhton 3, Pyhton-telegram-bot ile gerektirdiği kütüphaneleri ve TheCatAPI kullanacağız.

Telegram’daki her bot, uygulamanın mesajlaşma arayüzünü kullanmak için Bot API ile iletişim kurmasına yardımcı olan benzersiz bir token’a sahip. Telegram’ın geliştiriciler arasında en popüler özelliklerinden biri olan Bot API, mesajları arayüz olarak kullanmaya olanak tanıyor.

Token’ı almak için, isminden de anlaşışacağı gibi, kendi botlarınızı oluşturmanıza ve özelleştirmenize izin veren resmi bir bot olan @botfather ile bir konuşma başlatın. Telegram’da “@botfather” araması yaparak bu bota ulaşabilirsiniz.

Sohbete girdikten sonra /newbot komutunu yazarak botunuzu oluşturun. Botunuzun adını ve kullanıcı adını belirlemeye devam edin. Bu örnekte @passomebot ismi ile bir bot geliştireceğiniz. Bunu takiben botunuza özel bir token alacaksınız.

Pyhton 3 ile basit Telegram botu yapma konusunda ön hazırlıkları tamamladığımıza göre, heyecan verici asıl kısma adım atalım.

Kitaplıkları yükleyin

Windows kullanıyorsanız, komut istemini açın ve aşağıdaki komutları yazın: 

  • pip install python-telegram-bot
  • pip install requests

MacOS ya da Linux kullanıyorsanız, bunun yerine terminalinizde aşağıdaki komutları kullanın. Ayrıca Linux’ta, sudo ayrıcalıklarına sahip bir kullanıcı olarak oturum açtığınızdan da emin olmalısınız.

  • pip3 install python-telegram-bot
  • pip3 install requests

Programı yazmak

Bilgisayarınızda yeni bir klasör oluşturun ve onu en sevdiğiniz düzenleyicide açın. Yeni bir dosya oluşturun ve main.py olarak adlandırın. Bu dosya, botunuzun kaynak kodunu içerecektir.

Şimdi, daha önce kurduğumuz kitaplıkları bazı yerleşik işlevleri ile birlikte içe aktaralım.

  • from telegram.ext import Updater, CommandHandler
  • import requests
  • import re

Buradan itibaren programın akışı, TheCatAPI’ye erişmek, rastgele bir görüntünün URL’sini almak ve bu görüntüyü kullancının sohbetine göndermektir.

İstekler modülü kullanılarak yapılabilen fotoğraf URL’sini almak için bir işlevle başlayalım. Bu işlevde, TheCatAPI tarafından sağlanan rastgele bir dosyanın JSON verilerini yüklüyoruz ve daha sonra kullanmak üzere URL’sini çıkarıyoruz. JSON nesnesinin formatına bakmak için tarayıcınızda https://api.thecatapi.com/v1/images/search adresine gidin. Aşağıdakine benzer bir içerik fark edeceksiniz:

İLGİNİZİ ÇEKEBİLİR  Telegram ile kaybolan mesaj gönderme işlemi nasıl yapılır?

[{“breeds”:[],”id”:”a8c”,”url”:”url.jpg”,”width”:800,”height”:533}]

JSON nesnesinin bir sözlüğü tutan dizi olduğuna dikkat edin. Bu sözlük, “url” anahtarına sahip URL’i içerir. URL’yi çıkarmak için bir dizinin ilk öğesine ve ardından ilgili anahtara başvurmanız gerekir.

def getUrl():

    #obtain : görüntü ayrıntılarıyla bir json nesnesi

    #extract : json nesnesinden bir fotoğraf url’s

    contents = requests.get(‘https://api.thecatapi.com/v1/images/search’)

    url = contents[0][‘url’]

    return url

Ardından, bu fotoğrafı bir kullanıcının sohbetine göndermemiz gerekiyor. Bunun için bir fotoğraf URL’sine ve kullanıcının sohbetinin benzersiz adresine ihtiyacımız var. Bunu yapmak için bir wrapper işlevi oluşturalım. İlk önce getUrl() adını veriyoruz. Rastgele bir görüntünün URL’sini alma işlevi — bu URL, programın işlevi her yenilendiğinde değişir.

Bunu daha sonra, alıcının mesajlar için botun hedef konumunu tanımlayan ve URL’yi Bot API’nin dahili send_photo() işlevi aracılığıyla ayrıştıran sohbet kimliğinin alınması izler.

def sendImage(bot, update):

    url = getUrl()

    chat_id = update.message.chat_id

    bot.send_photo(chat_id=chat_id, image=url)

Bot API’nin çeşitli dahili işlevleri ve nasıl çalıştıkları hakkında daha fazla bilgi edinmek için, bu çalışmanın ardından Telegram’ın resmi dökümanlarına göz atabilirsiniz.

Son olarak, botun genel çalışmasını kontrol eden bir işlev oluşturalım. Geleneksel olarak main () biçiminde adlandırılan bu işlev, çalışmanın en başında elde ettiğimiz belirteci kullanarak Bot API’ye bir HTTP isteği gönderdiğimiz ve ardından botun kullanıcı etkileşiminin nasıl olacağını tanımladığımız yerdir. Bunun kadar basit bir durumda, bu aslında botu başlatmak ve kullanıcı tarafından istendiğinde sendImage () işlevini çağırmak anlamına gelir.

def main():

    updater = Updater(“1190888035:AAGeJ9316R95NqJLFefV5vQA-UL4np11V2c”)

    #call sendImage() kullanıcılar Telegram’da bir komut yazdığında

chat

    updater.dispatcher.add_handler(CommandHandler(‘meow’,sendImage))

    #start the bot

    updater.start_polling()

    updater.idle()

if __name__ == ‘__main__’:

    main()

Son program kodları ise şöyle görünmelidir:

from telegram.ext import Updater, CommandHandler

import requests

import re

def getUrl():

    #obtain a json object with image details 

    #extract image url from the json object

    contents = requests.get(‘https://api.thecatapi.com/v1/images/search’)

    url = contents[0][‘url’]

    return url

def sendImage(bot, update):

    url = getUrl()

    chat_id = update.message.chat_id

    bot.send_photo(chat_id=chat_id, image=url)

def main():

    updater = Updater(“1190888035:AAGeJ9316R95NqJLFefV5vQA-UL4np11V2c”)

    #call sendImage() when the user types a command in the telegram chat

    updater.dispatcher.add_handler(CommandHandler(‘meow’,sendImage))

    #start the bot

    updater.start_polling()

    updater.idle()

if __name__ == ‘__main__’:

    main()

Kendi Telegram botunuzu yarattınız!

Pyhton 3 ile basit Telegram botu yapma adımları işte bu kadar pratik. Kullanıcılar istediğinde, internetin en sevimli kedilerini gönderen açık kaynaklı bir Telegram botu yaptınız. Programı çalıştırmayı deneyin ve etkinleştirmek için sohbet ekranında /meow yazın.

İLGİNİZİ ÇEKEBİLİR  Paymes 400 bin kullanıcıyı aştı

Bu bot, sınırlı işlevselliğe sahip olsa da, Telegram’ın bot ekosistemi son derece güçlü. Botunuzun işlevselliğini geliştirmek için istediğiniz sayıda karmaşık alt program ve özellik ekleyebilirsiniz. Yıllat içinde birçok geliştiricinin katkıda bulunduğu Telegram botları, birçok açıdan oldukça kullanışlı yapılar.

Telegram botununun hosting ihtiyacı

Botunuz hazır ve çalışır durumda olduğuna göre bilgisayarınızda main.py’yi kapatmayı deneyin ve Telegram uygulamasında botu kullanın. Meow komutuna bir yanıt geliyor mu? Maalesef…

Telegram botları konusunda yeni başlayan biriyseniz, çalışan bir bot oluşturduğunuzda PC’nizdeki main.py’nin neden çalışmadığı konusunda kafanız karışabilir. Bunun nedeni programın, kullanılan API’lere HTTP istekleri göndermek için, bilgisayarınızı yerel bir sunucu olarak kullanmasıdır.

Bu nedenle uygulamayı her kullanmak istediğinizde programı çalıştırmanız gerektiği gerçeğiyle karşılaşacaksınız ancak bu çok kullanışlı değildir. Bu sorunu çözmek için botun, cihazınıza olan bağımlılığını kaldırmanız gerekiyor.

Bunu yapmanın yollarından biri kendi web sunucunuzu kurmak ve programı çalıştırmak için kullnmak üzere, Raspberry Pi gibi düşük maliyetli bir PCB kullanmaktır. PCB’ler önemli ölçüde daha düşük enerji ayak izine sahip olma eğiliminde olduğundan, tüm gün boyunca PC çalıştırmaya nazaran çok daha uygun maliyetlidir ve aynı avantajlar sunar.

Alternatif olarak programınızı buluta da dağıtabilirsiniz. Heroku, AWS, Google Cloud ya da Microsoft Azure gibi web barındırma platformlarına giderek ihtiyacınıza en uygun aboneliği seçebilirsiniz. Ücretsiz bir deneme veya bonelik seçmenizi ve programınızın ölçeğini ve kapsamını artırdıkça yükseltmenizi öneririz. İşte Phytonh 3 ile Telegram botu yapma işlemi bu kadar…

Etiketler: botchatbotPhyton 3pyhtonTelegramtelegram botutelegram botu yapma
PaylaşTweet'lePaylaşGönderPaylaş

İLGİLİ YAZILAR

WhatsApp 12. yıl dönümünü kutluyor

WhatsApp, 12. yıl dönümünü kutluyor

Hangi WhatsApp kişilerinin Telegram kullandığını nasıl öğrenebilirsiniz?

Hangi WhatsApp kişilerinin Telegram kullandığını nasıl öğrenebilirsiniz?

Telegram widget'ları iOS ve Android'de nasıl kullanılır?

Telegram widget’ları nasıl kullanılır? [iOS & Android]

Yeni Telegram güncellemesi özellikleri: Otomatik silme, widget ve süresi dolan davet

Yeni Telegram güncellemesi özellikleri: Otomatik silme, widget ve süresi dolan davet

SON HABERLER

Valheim yeni bir rekor kırdı
Teknoloji

Valheim yeni bir rekor kırdı ve 500 bin oyuncuya ulaştı

Amazon'un oyun hizmeti Luna yakında Avrupa'da
Teknoloji

Amazon’un oyun hizmeti Luna yakında Avrupa’da

Google, Android'de uyku takibi için bir API kullanıma sundu
Teknoloji

Google, Android’de uyku takibi için bir API kullanıma sundu

CBOT, 2020’de 15 kat büyüdü
Pro

CBOT, 2020’de 15 kat büyüdü

Spotify, sevdiğiniz şarkıları ruh halinize göre filtrelemenizi sağlayacak
Teknoloji

Spotify, sevdiğiniz şarkıları ruh halinize göre filtrelemenizi sağlayacak

Redmi K40 ve K40 Pro modelleri duyuruldu: işte özellikleri, fiyatı ve çıkış tarihi
Teknoloji

Redmi K40 ve K40 Pro modelleri duyuruldu, işte özellikleri, fiyatı ve çıkış tarihi

SON FORUM GÖNDERİLERİ

Stalk nedir, stalking nedir, ne a …yazan Fair2 ay önce
Kolayca Instagram foto indir: Ins …yazan Fair2 ay önce
Android için en iyi yaşlandırma u …yazan Fair2 ay önce
Instagram güncelleme hakkında her …yazan Fair2 ay önce
iPhone 12'de 5G'yi kapatmayazan Fair2 ay önce
digital report

© 2019 Digital Report bir Linkmedya markasıdır.

  • Gizlilik
  • İletişim
  • Künye

Bizi takip edin

Sonuç bulunamadı
Tüm sonuçları gör
  • TEKNOLOJİ
  • DR
  • GİRİŞİM
  • E-TİCARET
  • FINTECH
  • MARKA
  • GÜVENLİK
  • REHBER
  • DERGİ
  • FORUM