Python ve Twitter API İle Tüm Like Geçmişini Temizleme Botu
Python ve Twitter API kullanarak like geçmişinizi tek tek kaldırmak yerine yazacağımız bot yardımı ile topluca ve hızlıca kaldırabiliriz. Üstelik herhangi bir zararlı yazılım kullanmadan hesabınızı kendi API istekleriniz ile güvenle yönetmiş olacaksınız.
Twitter API, Twitter verilerinizi programatik olarak yönetmenize izin verir. Yakın zamanda yayınlanan Twitter API v2 ise birçok yeni ve gelişmiş özelliğe sahiptir.
Twitter API v2, birincil Twitter API'si olsa da, platform şu anda önceki sürümleri de (v1.1, Gnip 2.0) desteklemektedir. Gelecekteki tüm yeniliklerin gerçekleşeceği yer burası olduğundan, tüm kullanıcıların v2 ile başlamasını öneririz.
Twitter API v2, platformdaki kullanımınızı ölçeklendirmenize yardımcı olacak birkaç erişim düzeyi içerir. Genel olarak, yeni hesaplar ücretsiz Temel erişim için hızlı bir şekilde kaydolabilir. Tüm erişim düzeyleri arasındaki farklar tablosunu görmek için şu bağlantıya gidebilirsiniz.
Python ile Twitter API v2 kullanacağımız için öncelikle Twitter Developer Platform'a kayıt olmanız gerekmektedir.
Açılan sayfada gerekli olan alanları doldurarak Developer panele kayıt olabilirsiniz.
Mailinize gelen bağlantıyı takip ederek Twitter API'yi neden kullanmak istediğinizi anlatan formu doldurup başvuruyu tamamlayabilirsiniz.
Başvurunuzun kabul olma süreci 1-2 gün sürebilir. Başvurunuz kabul edildikten sonra Twitter API'yi kullanmaya başlayabilirsiniz.
Twitter API kullanımına başlamak için sıradaki işlem bir Proje ve Uygulama oluşturmaktır. Bunları da panele girdiğinizde karşınıza çıkan Create Project
butonunu kullanarak oluşturabilirsiniz.
Artık projemiz de hazır olduğuna göre API versiyonları, key ve authentication methodlarından bahsedebiliriz.
Twitter API bir çok versiyona sahiptir;
- Twitter Ads API
- Twitter API: Standard v1.1
- Twitter API: Premium v1.1
- Twitter API: Enterprise (Gnip 2.0)
- Twitter API v2
Biz bu API versiyonlarından en yeni ve en kapsamlı olan v2 yi kullanacağız. Eğer v1 kullanıyorsanız siz de bir an önce v2 ye migration işlemine başlasanız iyi olur.
Twitter API'leri çok büyük miktarda veriyi işler. Bu verilerin hem geliştiriciler hem de kullanıcılar için güvenliğini sağlamanın yolu, kimlik doğrulamasından geçiyor. Kimlik doğrulama için her biri aşağıda listelenen birkaç yöntem vardır.
- Basic authentication
- OAuth 1.0a User Context
- OAuth 2.0 Bearer Token (App-Only)
- OAuth 2.0 Authorization Code Flow with PKCE
Birçok library bu entergrasyonları otomatik olarak ele aldığından, çoğu geliştiricinin kimlik doğrulama karmaşıklıklarıyla uğraşması gerekmeyecektir. Fakat hangi işlem için hangi doğrulama mekanizmasını kullanmanız gerektiğini bilmeniz gerekmektedir.
Hangi endpoint için hangi authentication yöntemini kullanabileceğinizi aşağıdaki linkte yer alan tablodan öğrenebilirsiniz:
🌎 Twitter API v2 authentication mapping table
Örneğin, bu tabloya baktığımızda, tweet detaylarını almak için kullanabileceğimiz "Tweet lookup
" endpointleri için tüm Oauth methodlarını kullanabilecekken, bu yazımızda yapacağımız "Manage Likes
" endpointleri OAuth 2.0 App Only yani Baerar Token ile çalışmamaktadır.
Token konusundan bahsetmişken, Twitter API kullanırken karşılacağınız key'ler şunlardır:
- Consumer Key: API istekleri yaparken uygulamanızı temsil eden kullanıcı adı olarak düşünün.
- Consumer Key Secret: API istekleri yaparken uygulamanızı temsil eden şifre olarak düşünün.
- Bearer Token: Taşıyıcı Simgesi, geliştirici Uygulamanız adına isteklerin kimliğini doğrular.
- Access Token: OAuth 1.0a API isteklerinin kimliğini doğrulamak için kullanılan kullanıcıya özel kimlik bilgileridir. Talebin adına yapıldığı Twitter hesabını belirtirler.
- Access Token Secret: OAuth 1.0a API isteklerinde Access Token için Secret Keydir.
- OAuth 2.0 Client ID: OAuth 2.0'ı bir kimlik doğrulama yöntemi olarak kullanmanıza izin veren kullanıcı adı olarak düşünün.
- OAuth 2.0 Client Secret: OAuth 2.0'ı bir kimlik doğrulama yöntemi olarak OAuth 2.0'ı kullanmanıza izin veren parola olarak düşünün.
Artık Twitter API temellerininden bahsettiğimize göre kodu paylaşabiliriz. Aşağıdaki linkte paylaştığım Github repoyu ziyaret ederek main.py
dosyasındaki credentials bilgilerini kendi bilgilerinizle değiştiriniz.
Ardından programı çalıştırarak ekranda gördüğünüz URL'i ziyaret ediniz.
Açılan Oauth izin penceresindeki butonu kullanarak gerekli izini veriniz.
Ardından callback URL'inize yönlendirileceksiniz. Bu URL yi Developer Panel'de Oauth ayarlarından düzenleyebilirsiniz. Şimdi açılan sayfa URL adresindeki oauth_verifier
parametresinde yazan kodu kopyalayınız.
Bu kodu terminale yapıştırınız.
Bot çalışmaya başladığında tüm beğenileriniz üzerinde gezecek ve hepsini beğenilerinizden çıkaracak.
Bot hakkında sorunuz varsa aşağıdaki yorum kutusunu kullanabilirsiniz.