Digital Report
  • DERGİ
  • TEKNOLOJİ
  • YAPAY ZEKA
  • PROFESYONEL
    • GİRİŞİM
    • E-TİCARET
    • FİNTEK
    • MARKA
  • GÜVENLİK
  • KRİPTO
  • OYUN
  • REHBER
No Result
View All Result
Digital Report
No Result
View All Result
Home Rehber

Pyhton 3 ile basit Telegram botu yapma

by Nihat Bilge
14/01/2021
in Rehber
Pyhton 3 ile basit Telegram botu yapma
Facebook'ta PaylaşTwitter'da PaylaşLinkedIn'de PaylaşWhatsApp'ta PaylaşTelegram'da Paylaş

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.

Pyhton 3 ile basit Telegram botu yapma

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:

[{“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.

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…

Tags: botchatbotpyhtonTelegramtelegram botu

İLGİLİ YAZILAR

Telegram iOS'a AI özetleri ve Liquid Glass geldi
Teknoloji

Telegram iOS’a AI özetleri ve Liquid Glass geldi

by Aytun Çelebi

Telegram, 3 Ocak 2026 tarihinde iOS platformu için 2026'nın ilk güncellemesini duyurdu. Güncelleme, kanal gönderilerindeki uzun metinler ile Anlık Görüntüleme...

Read moreDetails
Telegram'da engellendiğinizi pratik yöntemlerle nasıl anlarsınız
Rehber

Telegram’da engellendiğinizi pratik yöntemlerle nasıl anlarsınız

by Aytun Çelebi

Telegram, günlük iletişimlerimizin vazgeçilmez bir parçası haline geldi ve bazen birinin sizi engelleyip engellemediğini Telegram'da engellendiğinizi anlama merakı doğar. Bu...

Read moreDetails
Telegram'da mesaj gitmeme sorununu çözmenin pratik yolları
Rehber

Telegram’da mesaj gitmeme sorununu çözmenin pratik yolları

by Aytun Çelebi

Telegram gibi popüler mesajlaşma uygulamalarında mesaj gitmemesi sorununu çözmek, hızlı iletişim kurmanızı sağlar ve günlük hayatınızı aksatmaz. Bu sorun, internet...

Read moreDetails
Telegram çok fazla deneme hatası giderme rehberi
Rehber

Telegram çok fazla deneme hatası giderme rehberi

by Emre Çıtak

Telegram gibi popüler mesajlaşma uygulamalarında karşılaşılan hatalar, günlük iletişimi aksatabiliyor. Özellikle Telegram'da çok fazla deneme hatasını çözmek için doğru adımları...

Read moreDetails

SON YAZILAR

Deepfake krizi Grok’a kepenk indirtti

Microsoft: DeepSeek Çin’in %89’una hakim

Princeton mühendisleri minyatür robotların pil sorununu çözmek için çekirgelerden ilham aldı

Arm Holdings robotik ve otomotiv odaklı yeni Fiziksel Yapay Zeka bölümünü resmen duyurdu

ChatGPT Deep Research’te ZombieAgent zafiyeti keşfedildi

X’te rızasız çıplaklık seli sürüyor

Jensen Huang: Humanoid robotlar bu yıl insan seviyesine ulaşacak

AI patlaması PC fiyatlarını %50 fırlatacak

Trump ABD’yi Hybrid CoE, GFCE ve FOC’tan çekti

Gmail’in taslak yardımcısı ücretsiz oldu

SON REHBERLER

Bosch bulaşık makinesinde çalışan yıkama döngüsünü sıfırlama nasıl yapılır

Video boyutunu kalite kaybı olmadan küçültmenin pratik yolları

Ubisoft iç yazışmalarında oyunlar AAAA olarak nasıl tanımlanıyor

WhatsApp’ta kişileri ve grupları favorilere eklemenin yolları

Android’de ve iOS’ta veri kaybetmeden WhatsApp hesabı silme

Excel programı olmadan XLSX dosyasını açmanın pratik yolları

Modem şifresini unuttuğunuzda deneyebileceğiniz pratik çözüm yolları

Karşılaştığımız IPS ekran nedir avantajları ve dezavantajları nelerdir

İkinci el iPhone orijinal mi yenilenmiş mi nasıl anlaşılır

Windows’ta ve macOS’ta RAM hızını kontrol etmenin pratik yolları

BASIN BÜLTENLERİ

RTB House, Derin Öğrenme ile dijital reklamcılığın yeni işletim sistemini kuruyor

ESET, Çin bağlantılı LongNosedGoblin APT grubunu tespit etti

Simya VC’den Rudiq’e 1 milyon dolar yatırım

Huawei Cloud, İstanbul’da dijital perakende buluşması düzenledi

SteelSeries, tek kulaklıkla birden fazla platformda oyun oynama özgürlügü sunuyor

Aktif Tech, Deloitte Teknoloji Fast 50’de üçüncü oldu

Dolap, 2024 yılında 307 bin 340 ton karbon salımını önledi

Canon, Istanbul’da EOS R6 Mark III ve EOS C50 tanıttı

LG, yeni yıl için soundbar kampanyasını duyurdu

Citrix, Hibrit çoklu bulut lisans modeli sunuyor

Digital Report

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

  • Dergi
  • Yazarlar
  • Basın bültenleri
  • Gizlilik
  • İletişim
  • Künye

Bizi takip edin

No Result
View All Result
  • TEKNOLOJİ
  • YAPAY ZEKA
  • PROFESYONEL
    • GİRİŞİM
    • E-TİCARET
    • FINTECH
    • MARKA
  • GÜVENLİK
  • KRİPTO
  • OYUN
  • REHBER
  • BASIN BÜLTENLERİ
  • YAZARLAR
  • DERGİ
  • KÜNYE
  • İLETİŞİM