Instagram Botu Nasıl Yazılır?

Bu makalede bir Instagram botunun temelleri nasıl atılır ve nasıl yazılır bunu anlatacağım.

Ben botu yazarken C# dilini ve Visual Studio 2017 programını kullandım. Sizlerde makaleyi takip ederek kendinize bir bot yazmak istiyorsanız temel düzeyde C# bilgisine ve Visual Studio programını kullanmayı bilmeniz gerekmektedir.

Öncelikle yeni bir proje oluşturun. Visual C# dilini ve Windows Form App (.NET Framework)‘ı seçerek projenizi oluşturun.

Not: Ben Framework 4.6.1 kullandım.

Açılan formun dizaynını dilediğiniz gibi tasarlayabilirsiniz.

Form Arayüzü

Artık “Giriş Yap” butonuna tıkladığımızda olacak olayların kodlarını yazabiliriz.

Öncelikle InstaSharper kütüphanesini indirelim ve projemize dahil edelim. Bu kütüphane yazacağımız botun olmazsa olmazıdır. InstaSharper yerine başka kütüphanelerde kullanabilirsiniz. Bu tamamen sizin zevkinize kalmış.

Peki, bu InstaSharper neler içeriyor? Hemen listeleyelim.

InstaSharper Dosyaları

  • API’ler
  • Sınıflar
  • Dönüştürücüler
  • Yardımcılar
  • Log Tutucu

5 klasörden oluşan bu kütüphane, geliştiriciler tarafından yazılan son sürümünde (1.4.0) toplam 281 dosya içermektedir.

Hadi artık şu Instagram botunu kodlayalım!

Form1.cs kodlarına girin ve bize gerekli olan InstaSharper kütüphanelerini ekleyin.

using InstaSharper.API;
using InstaSharper.API.Builder;
using InstaSharper.Classes;
using InstaSharper.Logger;

“Giriş Yap” butonuna tıklandığında olacak olayların kodlarını yazmadan önce Form1 sınıfının başladığı yere iki adet değişken tanımlayalım.

public partial class Form1 : Form
{
    private static UserSessionData user;
    private static IInstaApi api;

    ...

}

Şimdi butona tıklandığında olacak olayları yazalım.

private void button1_Click(object sender, EventArgs e)
{
      user = new UserSessionData();
      user.UserName = textBox1.Text;
      user.Password = textBox2.Text;

      Login();
}

Son olarak Login() fonksiyonunu yazalım.

public static async void Login()
{
     if (user.UserName == "" || user.Password == "")
         MessageBox.Show("Lütfen tüm alanları doldurun.");
     else
     {
         api = InstaApiBuilder.CreateBuilder()
         .SetUser(user)
         .UseLogger(new DebugLogger(LogLevel.Exceptions))
         .Build();

         var loginRequest = await api.LoginAsync();

         if (loginRequest.Succeeded)
            MessageBox.Show("Giriş yaptın!");
         else
            MessageBox.Show("Giriş yapamadın!\n" + loginRequest.Info.Message);
     }
}

Artık botumuz çalışmaya hazır. Derleyelim ve giriş yapalım.

Instagram Botu Yanlış Giriş

Yanlış bilgiler girildiğinde karşımıza bir mesaj kutusu çıkacak ve altında da bu hatanın ne olduğu yazacaktır.

Instagram Botu Doğru Giriş

Doğru bilgiler girildiğinde ise “Giriş yaptın!” yazan bir mesaj kutusuyla karşılaşacaksınız.

Tüm bot kodlarını yazıp anlatmak, size iyilik değil kötülük olur. Eğer makaledeki adımları düzgün bir şekilde yaptıysanız ve başarılı olduysanız botun devamını InstaSharper kütüphanesinin Wiki Sayfası‘ndan araştırarak aşağıdaki özelliklere sahip bir botu kolayca yazabilirsiniz.

  • Giriş yap
  • Çıkış yap
  • Yeni hesap oluştur
  • Kullanıcının keşfet gönderileri
  • Kullanıcının zaman tüneli gönderileri
  • Kullanıcı adına ait tüm medyalar
  • Kullanıcıya ait profil resmi
  • Kullanıcı adına ait bilgiler
  • Etikete ait gönderiler
  • Takipçi listesi
  • Giriş yapan kullanıcının takipçi listesi
  • Takip listesi
  • Son takip aktiviteleri
  • Kullanıcı adına ait kullanıcı etiketleri
  • Gelen kutusu
  • Takip et
  • Takipten çıkar
  • Ve benzeri…

Kendi kütüphanemizi değilde hazır yazılmış bir kütüphaneyi kullanmamın amacı da Kemal Faruk Durhat hocamın dediği gibi:

Amerika’yı yeniden keşfetmeye gerek yok.

Yayınlayan

“Instagram Botu Nasıl Yazılır?” üzerine 2 yorum

  1. Merhaba aynı api üzerinde uğraşıyorum fakat challenge required hatasını halledemiyorum araştırdığım kadarıyla api üzerinde buna bir çözüm yok bunu nasıl halledebileceğim hakkında bir fikriniz var mı ?

    1. Merhabalar. Makalede verilen API’nin geliştirilmesi durdurulmuştur. Bende aynı şekilde “Challenge Required” hatasını aldığım için birkaç araştırma yaptım ve bu API’den yola çıkılarak yeniden yazılmış bir API buldum. Yeni sistemde cep telefonuyla veya e-posta adresi ile onaylama yaparak “Challenge” kontrolünden geçebilirsiniz. Yeni API adresi: https://github.com/ramtinak/InstagramApiSharp

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir