Telegram Botu Oluşturma
Telegramda bot oluştururken babaların babası BotFather’dan yardım alıyoruz.
- İlk önce BotFather 'a yeni bir bot oluşturma isteği yolluyoruz;
/newbot
- Daha sonra botumuza isim veriyoruz;
@KekikAkademi Python Veri Kazıma Örneği
- Ardından botumuz için kullanıcı adı oluşturuyoruz. Bu kullanıcı adı
_bot
veyabot
ile bitmek zorunda.
KekikAkademiPythonBot
- Bize döndürdüğü token’i bir yere kayıt ediyoruz. (Token’e daha sonra da ulaşılabiliyor, yeni token istenebiliyor. Çok dert bir durum değil.)
1052180975:AAHnsgm1U3pygiaY1tWxVUpnoeh-byvECLg
Bu token artık geçersiz olduğu için gönül rahatlığıyla paylaşabiliyorum
/mybots
komutu ile oluşturduğumuz bota açıklama fotoğraf vs. ekleyip değiştirebilir; tokeni yenileme işlemlerini yapabiliriz…
- Oluşturduğumuz bot’a girip ( @KekikAkademiPythonBot )
/start
diyerek botu başlatıyoruz.
Bot Kontrolü ve Chat id Öğrenmek
- Botumuzun düzgün çalışıyor olduğunu teyit etmek için
https://api.telegram.org/bot{token}/getMe
adresini kontrol ediyoruz.
https://api.telegram.org/bot1052180975:AAHnsgm1U3pygiaY1tWxVUpnoeh-byvECLg/getMe
-
Ardından bota (@KekikAkademiPythonBot ) herhangi bir mesaj yazarak botla etkileşime geçiyoruz.
-
Daha sonra
https://api.telegram.org/bot{token}/getUpdates
adresini kullanarak gelen verilerin json çıktısı nı elde ediyoruz. Bu çıktıda bizim için önemli olanid
parametresidir. Bu parametrenin değerini de not alalım.
https://api.telegram.org/bot1052180975:AAHnsgm1U3pygiaY1tWxVUpnoeh-byvECLg/getUpdates
Şu an elimizde token
ve id
parametreleri var.
Artık bu iki parametre ile botumuzu kontrol edeceğiz…
Betiği Telegram Botuna Bağlama
Kütüphaneler
Python ile telegram’a veri göndermek için basit iki kütüphane;
import requests # Eski Usul istek atıcı dostumuz
import telebot # Yeni nesil dostumuz
Telegram Bağlantısı
Bot_Token = "XXXXXXXX:XXXXXXXXXX" # Bot Token Tanımlaması
Chat_ID = "XXXXXXXXX" # Chat ID Tanımlaması
# telebot'a Tokenimizi bağlayalım
KekikPython = telebot.TeleBot(Bot_Token)
Eski Usul requests Metodu;
requests ile Mesaj Gönderme
Mesaj = "Merhaba, Beni requests Gönderdi!"
DataForLink = {'text': Mesaj}
requests.post("https://api.telegram.org/bot" + Bot_Token +
"/sendMessage?chat_id=" + Chat_ID ,
data=DataForLink)
Gönderdiğimiz istek şu şekilde;
https://api.telegram.org/botXXXXXXXX:XXXXXXXXXX/sendMessage?chat_id=XXXXXXXXXdata=&text=Merhaba, Beni requests Gönderdi!
veya
Mesaj = "Merhaba, Beni requests Gönderdi!"
requests.post("https://api.telegram.org/bot" + Bot_Token +
"/sendMessage?chat_id=" + Chat_ID +
"&text=" + Mesaj)
https://api.telegram.org/botXXXXXXXX:XXXXXXXXXX/sendMessage?chat_id=XXXXXXXXX&text=Merhaba, Beni requests Gönderdi!
requests ile Dosya Gönderme
Dosya = open(r"DocTest_KekikAkademi.txt", 'rb')
# veya "C:\Users\kekik\Desktop\kodlama\DocTest_KekikAkademi.txt"
FilesForLink = {'document': Dosya}
requests.post("https://api.telegram.org/bot" + Bot_Token +
"/sendDocument?chat_id=" + Chat_ID ,
files=FilesForLink)
requests ile Resim Gönderme
Eğer Fotoğrafta Çözünürlük Kaybı Yaşanmasını İstemiyorsanız Dosya Olarak Gönderin.
Resim = open(r"FotoTest_KekikAkademi.png", 'rb')
# veya "C:\Users\kekik\Desktop\kodlama\FotoTest_KekikAkademi.png"
ImgForLink = {'photo': Resim}
requests.post("https://api.telegram.org/bot" + Bot_Token +
"/sendPhoto?chat_id=" + Chat_ID ,
files=ImgForLink)
Yeni Nesil TeleBot Metodu;
TeleBot ile Mesaj Gönderme
Mesaj = "Merhaba, Beni TeleBot Gönderdi!"
KekikPython.send_message(Chat_ID, Mesaj)
TeleBot ile Dosya Gönderme
Dosya = open(r"DocTest_KekikAkademi.txt", 'rb')
# veya "C:\Users\kekik\Desktop\kodlama\DocTest_KekikAkademi.txt"
KekikPython.send_document(Chat_ID, Dosya)
TeleBot ile Resim Gönderme
Eğer Fotoğrafta Çözünürlük Kaybı Yaşanmasını İstemiyorsanız Dosya Olarak Gönderin.
Resim = open(r"FotoTest_KekikAkademi.png", 'rb')
# veya "C:\Users\kekik\Desktop\kodlama\FotoTest_KekikAkademi.png"
KekikPython.send_photo(Chat_ID, Resim)
Kodların Tamamı
Basit Telegram RAT Projesi
Daha fazla resim eklemek isterdim ancak ilk post’um olduğu için yetkim yok